派生类的构造函数

一:调用父类无参构造函数
格式

父类
class BaseClass{
      public BaseClass(){
             Console.WriteLine("baseclass无参构造函数");
      }
}
子类
class DerivedClass:BaseClass{

      public DerivedClass():base(){
             Console.WriteLine("这个是DerivedClass的无参构造函数");
   }
}

当创建子类对象时
class Program{
      static void Main(string[] args){
              DerivedClass o1=new DerivedClass();
      }
}

此时控制台会输出:
baseclass无参构造函数
这个是DerivedClass的无参构造函数
说明会先执行父类的无参构造函数再执行子类的无参构造函数
另: 当我们没有再子类的构造函数中显示声明调用父类的构造函数时,默认会调用父类无参构造函数,因此上面代码中的base可以省略不写

二:调用父类的有参构造方法

父类
class BaseClass{
      private int x;
      public BaseClass(int x){
           this.x=x;
           Console.WriteLine("x赋值完成")
      }
}
子类
class DerivedClass{
  private int y;
  public DerivedClass(int x,int y):base(x){
     this.y=y;
     Console.WriteLine(y);
  }
}

通过base可以给父类中有参数的构造方法传递参数

子类创建对象的时候总是会先调用父类的构造方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值