标签:style http color 使用 os ar line new
C#中的基本类型都是值类型是在栈中创建的,而对象是引用类型是在堆中创建的,需要使用new关键字。
构造方法与类同名,没有返回类型。
限定被相似的名称隐藏的成员,例如:
public Employee(string name, string alias) { // Use this to qualify the fields, name and alias: this.name = name; this.alias = alias; }
将对象作为参数传递到其他方法
Class myClass { Public void foo(OtherClass otherObject) { otherObject.Bar(this); } }
有一个myClass.foo的方法,在方法中调用otherObject.Bar方法,传入对myClass当前实例的引用。这样Bar方法就可以使用当前myClass当前实例的公开方法和成员了。
声明索引器,例如:
public int this[int param] { get { return array[param]; } set { array[param] = value; } }
从重载构造方法中调用另一个:
Class myClass { Public myCall (int i) { // } Public myCall ():this(42) { // } }这个例子中,默认构造方法使用this关键字调用参数为整数的重载构造方法
非静态类可以包含静态的方法、字段、属性或事件。 即使没有创建类的实例,也可以调用该类中的静态成员。 始终通过类名而不是实例名称访问静态成员。 无论对一个类创建多少个实例,它的静态成员都只有一个副本。 静态方法和属性不能访问其包含类型中的非静态字段和事件,并且不能访问任何对象的实例变量(除非在方法参数中显式传递)。
更常见的做法是声明具有一些静态成员的非静态类,而不是将整个类声明为静态类。 静态字段有两个常见的用法:一是记录已实例化对象的个数,二是存储必须在所有实例之间共享的值。
静态方法可以被重载但不能被重写,因为它们属于类,不属于类的任何实例。
虽然字段不能声明为 static const,但 const 字段的行为在本质上是静态的。 这样的字段属于类型,不属于类型的实例。 因此,可以同对待静态字段一样使用 ClassName.MemberName 表示法来访问 const 字段。 不需要对象实例。
C# 不支持静态局部变量(在方法范围内声明的变量)。
instances
public class Cat { public Cat() { instances++; } public static void HowManyCats() { Console.WriteLine("{0} cats adopted", instances); } private static int instances = 0; } public class Tester { static void Main() { Cat.HowManyCats(); Cat frisky = new Cat(); Cat.HowManyCats(); Cat whiskers = new Cat(); Cat.HowManyCats(); Console.ReadLine(); } }如果声明了静态构造方法,必须保证静态构造方法在实例创建前运行。静态构造方法前没有访问修饰符,且不能访问非静态成员变量,故上例中instance 也是静态变量
标签:style http color 使用 os ar line new
原文地址:http://blog.csdn.net/gl1987807/article/details/38532219