public class A { public static int Y = 3; //@@@@过程一 /// <summary> /// 静态构造函数,一般在调用静态变量A.Y,这时Y=4 <==>(3+1),或者第一次调用构造方法 如 A a =new A();的时候会执行,且执行一次 /// </summary> static A() //@@@@过程二 静态构造方法(注意这里不能使用除static以外的其他修饰符) { Y += 1; } /// <summary> /// 这个是类(默认)构造方法 /// </summary> public A() //@@@@过程三 { Y = 9; } } public class B { public int like() { return A .Y;//此时的Y 会执行默认构造方法执行 //@@@@执行过程二 且只执行过程二 1次 } public int like2() { A a = new A(); //此时的Y 会执行默认构造方法执行 //@@@@过程三 return A .Y; } } ////调用上面的方法 public string testStatic() { B b = new B(); return string .Format("like is {0} ,like2 is {1}", b.like(), b.like2()); }
//输出为 like is 4 ,like2 is 9
这里主要是考静态构造函数,还有构造函数的方法
虽然现在知道他的调用过程,但还不是很清楚这个静态构造函数到底有什么用处。