【C++】继承与组合

继承和组合

  • 继承是一种 is- a 的关系, 组合是一种 has-a 的关系
  • public继承就是一种 is-a 的关系。 也就是说每一个派生类对象都是一个基类的对象
  • Date和Time就是一种组合 has-a 的关系, Date组合了Time, 每一个Date对象中都有一个Time对象

对于继承的分析
在继承方式中, 基类的内部细节对子类可见。而且基类的改变,对派生类的影响很大,派生类和基类间的依赖关系很强,耦合度很高

对于组合的分析
对象组合是继承之外的另一种复用的选择。因为对象的内部细节是不可见的。组合类之间没有很强的依赖关系,耦合度很低。优先使用对象组合可以保持每个类被更好的封装

继承的样例

class Time
{
   };
class Date : public Time
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值