为了账号安全,请及时绑定邮箱和手机立即绑定

this指定调用构造函数完了,为什么还会执行没有指定的构造函数?

this指定调用构造函数完了,为什么还会执行没有指定的构造函数?

杨__羊羊 2019-03-13 15:19:47
class BaseClass{    public BaseClass()    {        Console.WriteLine("基类构造函数");    }    public BaseClass(string str)    {        Console.WriteLine("基类构造函数,参数:{0}",str);    }}class Something:BaseClass{   //设定SomeClass类不带参数的构造函数自动调用SomeClass(string str)构造函数,    //并未str参数提供一个默认值:Something    public Something():this("something")    {        Console.WriteLine("调用Something()构造函数");    }    //设定SomeClass(string str)构造函数自动调用SomeClass(string str,int val)构造函数    //并为val参数提供一个默认值:10    public Something (string str):this(str,10)    {        Console.WriteLine("调用Something(string str)构造函数");    }    public Something(string str,int val)    {        Console.WriteLine("调用SomeClass(string str,int val)构造函数");    }}class ClassExample{    public static void Main()    {        Something child = new Something("something");        Console.Read();    }}//初始化类的时候使用的是SomeClass(string str)构造函数,因此会先调用SomeClass(string str, int val)构造函数,这里程序应该执行完了,为什么还会继续执行SomeClass(string str )构造函数?
查看完整描述
  • 1 回答
  • 0 关注
  • 419 浏览

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号