构造函数初始化器
有如下结构:
public class MyBaseClass { public MyBaseClass() { } public MyBaseClass(int i) { } } public class MyDerivedClass : MyBaseClass { public MyDerivedClass() : this(5, 6) { } public MyDerivedClass(int i) { } public MyDerivedClass(int i, int j) : base(i) { }
按如下初始化:
public class MyClass { MyDerivedClass myObj = new MyDerivedClass(4, 8); }
则执行顺序为:
- 执行System.Object.Object()构造函数
- 执行MyBaseClass.MyBaseClass(int i)构造函数
- 执行MyDerivedClass.MyDerivedClass(int i , int j)构造函数
- 执行MyDerivedClass.MyDerivedClass()构造函数