【发布时间】:2011-11-05 22:39:42
【问题描述】:
我很好奇静态和实例构造函数的触发顺序。有人可以告诉我火下构造函数的顺序来帮助我吗?
对于静态构造函数的执行顺序,这种行为背后的解释是什么?
class A
{
static A()
{
Console.WriteLine("I am in A's Static Constructor");
}
A()
{
Console.WriteLine("I am in A's Default Constructor");
}
}
class B:A
{
static B()
{
Console.WriteLine("I am in B's Static Constructor");
}
B()
{
Console.WriteLine("I am in B's Default Constructor");
}
}
class C:B
{
static C()
{
Console.WriteLine("I am in C's Static Constructor");
}
C()
{
Console.WriteLine("I am in C's Default Constructor");
}
}
以下语句的输出是什么:
C c = new C();
【问题讨论】:
-
你没有编译器吗?
-
LinqPad 可以轻松测试这样的代码。
标签: c# .net oop inheritance