一、定义

尽量使用组合/聚合的方式,而不是继承方式。
设计模式七大原则 (7)——合成复用原则


二、依赖、聚合、组合介绍

2.1 依赖关系

定义 : 只要在类中用到了对方,那么它们之间就存在依赖关系。
依赖关系常可以出现在以下地方

  • 类中用到了对象
  • 类的成员变量
  • 方法的返回类型
  • 方法接收的参数类型
  • 方法中使用到

2.2 聚合关系

定义 : 聚合关系表示的是整体和部分的关系,整体和部分可以分开。
例如:一台电脑由显示器、键盘、鼠标等组成,组成电脑的各个配件是可以从电脑上分离出来的,使用带菱形的实线来进行表示。
设计模式七大原则 (7)——合成复用原则

2.3 组合关系

定义 : 组合关系也是整体和部分的关系,但是整体和部分不可分开。
例如:一个人由头,有自己的身份证。人和身份证可以分开,这是聚合关系;但人和头是不可以分开的,这就是组合关系。
设计模式七大原则 (7)——合成复用原则


三、注意事项和细节

  • 找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起;
  • 针对接口编程,而不是针对实现编程;
  • 为了交互对象之间的松耦合设计而努力。

参考

相关文章: