c#类的实例化顺序
1、静态变量设置为0
2、执行静态变量初始化器
3、执行基类静态构造函数
4、执行静态构造函数
5、实例变量设置为0
6、执行实例变量初始化器
7、执行基类中恰当的构造函数
8、执行派生类恰当的构造函数
从定义第二个类实例开始:从5开始执行
参考:《c#高级编程》
public class A
{
public static readonly int x;
static A()
{
x = B.y + 1;
}
}
class B
{
public static int y = A.x + 1;
static void Main(string[] args)
{
Console.WriteLine("x:{0},y:{1}。", A.x, y);
Console.ReadLine();
}
}
result:
x:1,y:2