首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >何时使用组合以及何时使用继承

何时使用组合以及何时使用继承
EN

Stack Overflow用户
提问于 2019-05-31 03:13:22
回答 1查看 63关注 0票数 0

有没有办法告诉你什么时候使用组合,什么时候在你的代码中使用继承。

例如:假设我们有4个类,分别是ComputerMotherBoardMonitorKeyboard。我可以让computer继承其他三个类,也可以在computer字段中声明MotherBoardMonitorKeyboard,因此对于第二种情况使用组合。哪种方式更好?大多数开发人员更喜欢哪种方式?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-31 03:28:21

我更喜欢following案例中的继承:

  • 这两个类位于相同的逻辑域
  • 子类是超类
  • 的真子类型超类的实现对于子类
  • 是必需的或合适的子类所做的增强主要是累加性的。

否则,构图是适当的。

请注意,在这种情况下,计算机由您列出的组件组成。作为一条捷径,我有时会问自己以下问题:

  • ComputerMouse吗?如果是这样,那么就使用组合。请注意,计算机可以没有鼠标。
  • Is MacBook a Computer?如果是这样,那么就使用继承。

...但一般来说,哪种方式更可取

一般来说,应该根据情况做出决定:)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56384323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档