类的继承规则

 1、继承是可传递的。如果C从B中派生,B又从A中派生,那么C不仅继承了B中声明的成员,同样也继承了A中的成员。Object类作为所有类的基类。
 
2、派生类(子类)应当是对基类(父类)的扩展。派生类可以添加新成员,但不能除去已经继承的成员的定义。 

3、除默认的构造函数外,其它构造函数和析构函数不能被继承。私有成员不能继承。除此以外的其它成员,不论对它们定义了怎样的访问方式,都能被继承。基类成员的访问方式只能决定派生类能否访问它们。 

4、基类中的默认的(无参的)构造函数不能为私有private(如果基类一个构造函数都没有则CRL会自动添加一个默认的(无参的)public构造函数)。当基类中有多个构造函数时,其中必须要显式添加一个默认的(无参的)构造函数,并且不能为private。【由此可见:默认情况下子类实例化时一定会先通过父类的默认构造函数先实例化父类。如果要在子类实例化时调用父类的有参构造函数可以在子类的构建函数顶部使用:Base(parmas)的方式显式指定调用父类的某一个构造函数】

5、派生类如果定义了与继承而来的成员同名的新成员,就可以覆盖已继承的成员。但这并不是派生类删除了这些成员,只是不能再访问这些成员。(这点需要注意的是,如果是属性或者方法同名,但是签名不同,那就不是覆写,而是重载了)。 

6、类可以定义虚方法、虚属性以及虚索引指示器,它的派生类能够重载这些成员,从而实现类可以展示出多态性。 

7、派生类只能从一个类中继承,可以通过接口实现多重继承。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值