Xen*_*ate 20 c# constructor base
可能重复:
C#构造函数执行顺序
class Foo
{
public int abc;
Foo()
{
abc = 3;
}
}
class Bar : Foo
{
Bar() : base()
{
abc = 2;
}
}
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,当创建Bar的对象时,BarObject.abc的值是多少?基础构造函数是第一个调用,还是Bar()运行,/ then/base()构造函数?
Pao*_*olo 37
它将是2.构造函数按顺序从基类开始到最后继承的类.
请注意,初始化程序(静态变量和实例变量)的运行方向相反.
完整的序列如下:http://www.csharp411.com/c-object-initialization/