今天在MSDN中看文章的时候看到静态构造函数这一段发现自己有点不懂想了好半天还没弄明白现在把它贴出来 今天在MSDN中看文章的时候看到静态构造函数这一段发现自己有点不懂想了好
今天在MSDN中看文章的时候看到静态构造函数这一段发现自己有点不懂想了好半天还没弄明白现在把它贴出来 今天在MSDN中看文章的时候看到静态构造函数这一段发现自己有点不懂想了好半天还没弄明白现在把它贴出来看看谁能够帮助我呵呵我先把代码贴出来using System;class A{ public static int X; static A() { X B.Y 1; }}class B{ public static int Y A.X 1; static B() {} static void Main() { Console.WriteLine("X {0}, Y {1}", A.X, B.Y); }}产生输出X 1, Y 2对于这个输出我有点疑问在这段代码编译运行的时候首先由于class B里面带有Main所以肯定是要先运行static B(),但是在class B()中又有静态的字段所以会先执行Y A.X 1这行代码到了这里的时候由于A.X这句所以在class A中程序会先执行静态构造器,静态构造器中的代码X B.Y 1这个时候该怎么往下执行了请教一下
转:https://www.cnblogs.com/zndavid/archive/2006/06/05/417891.html