☰
C#构造函数在继承过程中的执行顺序
2026/10/9 4:26:23 网站建设 项目流程
using System; class Program { static void Main(string[] args) { childTest test = new childTest(); childTest test1 = new childTest(2); childTest test2 = new childTest(2, 3); Console.Read(); } } class baseTest { public baseTest() { Console.WriteLine("父类构造函数"); } public baseTest(int i) { Console.WriteLine("父类有参数构造函数" + i); } } class childTest : baseTest { public childTest() { Console.WriteLine("子类无参数构造函数"); } public childTest(int i) { Console.WriteLine("子类有参数构造函数" + i); } public childTest(int a, int b) : base(a) { Console.WriteLine("子类2个参数构造函数"); } }

以上这段代码的运行结果是:

父类构造函数

子类无参数构造函数

父类构造函数

子类有参数构造函数2

父类有参数构造函数2

子类2个参数构造函数

从运行结果可以看出,先执行父类的构造函数,再执行子类的构造函数。如果没有显式调用父类的构造函数,则会默认调用父类的无参数构造函数;反之,如果显式调用了父类的有参数构造函数,则不会调用无参数构造函数。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询