在C#中,类的初始化顺序是:
1、首先,初始化类的实例字段;
2、其次,调用基类的构造函数,没有明确的基类则调用System.Object的构造函数;
3、最后,调用自己的构造函数
类的初始化顺序图
namespace 类的初始化顺序
{
class BaseClass
{
public BaseClass()
{
Console.WriteLine("基类的构造函数被调用");
}
}
class ChildClass : BaseClass
{
public bool FieldA = true;
public bool FieldB;
public ChildClass()
{
Console.WriteLine("自己的构造函数被调用");
}
public void Print()
{
Console.WriteLine(FieldA);
Console.WriteLine(FieldB);
}
}
}
{
class Program
{
static void Main(string[] args)
{
ChildClass child = new ChildClass();
child.Print();
Console.Read();
}
}
}