c# 构造函数的一点见解

读书读到 构造函数这一部分,想到了些有趣的东西,写下来以给大家分享

构造函数是一个类初始化时调用的无返回值的特殊同名方法,当一个类从另一个类继承 ,派生类的初始化过程其实就是向上不断调用基类的构造函数这也是 .net类库的一个重要特性,通过初始化一个派生类 来完成一整个类库的初始化,书上提到派生类默认的构造函数隐式的调用基类的构造函数 语法如下

class b :a

{

public b():base{}

}

如果a中有一个 带参数的构造函数 那么派生类如何调用呢?语法如下

public b (string str):base(str){}

通过构造函数的参数变量传递给基类 完成调用 那问题就出来了 ,如果我要用一个无参或者参数和基类不同的派生类的构造函数来调用基类指定的构造函数 该如何呢?书上没有,不过我们触类旁通 举一反三即可 语法如下

通过在 b类中声明 静态的字段或者属性 static string str;然后再构造函数中调用静态字段赋给基类的参数列表语法如下


public b():base(b.str){}

这样 就可以灵活的指定基类的构造函数了,技术的乐趣可不就是在这里?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值