关于继承与构造函数的一个问题这是源代码,具体问题在最下面:C# code using System public class A {
关于继承与构造函数的一个问题 这是源代码,具体问题在最下面:
C# code
using System; public class A { public A() { Console.WriteLine("A"); } } public class B { public B() { Console.WriteLine("B"); } } public class C : A { B newb = new B();} class MainClass { public static void Main() { C newc = new C(); Console.ReadLine(); } }
这个C#程序的输出结果是: B A
问题是:请问Main函数中 “C newc = new C();” 是按照什么顺序执行的?
[解决办法] C newc = new C(); 先执行 B 的构造,输出B,然后执行父类A的构造,输出A [解决办法] 类的成员变量初始化先与构造函数执行 先执行 B newb = new B()在执行构造函数 输出B A [解决办法]