一、定义
尽量使用组合/聚合的方式,而不是继承方式。
二、依赖、聚合、组合介绍
2.1 依赖关系
定义 : 只要在类中用到了对方,那么它们之间就存在依赖关系。
依赖关系常可以出现在以下地方
- 类中用到了对象
- 类的成员变量
- 方法的返回类型
- 方法接收的参数类型
- 方法中使用到
2.2 聚合关系
定义 : 聚合关系表示的是整体和部分的关系,整体和部分可以分开。
例如:一台电脑由显示器、键盘、鼠标等组成,组成电脑的各个配件是可以从电脑上分离出来的,使用带菱形的实线来进行表示。
2.3 组合关系
定义 : 组合关系也是整体和部分的关系,但是整体和部分不可分开。
例如:一个人由头,有自己的身份证。人和身份证可以分开,这是聚合关系;但人和头是不可以分开的,这就是组合关系。
三、注意事项和细节
- 找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起;
- 针对接口编程,而不是针对实现编程;
- 为了交互对象之间的松耦合设计而努力。
参考
- https://blog.csdn.net/one_Jachen/article/details/100050832
- 尚硅谷 韩顺平 图解Java设计模式 http://www.atguigu.com/download_detail.shtml?v=202