设计模式六大原则(5)合成/聚合复用原则
来源:互联网 发布:矩阵变换 编辑:程序博客网 时间:2024/05/16 15:46
一:合成/聚合复用原则
尽量使用合成/聚合,尽量不要使用类继承
二:什么是合成?
. 合成表示一种强的拥有关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样,打个比方:人有两个胳膊,胳膊和人就是部分和整体的关系,人去世了,那么胳膊也就没用了,也就是说胳膊和人的生命周期是相同的
. 合成关系用实心的菱形+实线来表示
三:什么是聚合?
. 聚合表示一种弱的拥有关系,体现的是A对象可以包含B对象,但是B对象并不是A对象的一部分,打个比方:人是群居动物,所以每个人属于一个人群,一个人群可以有多个人,所以人群和人是聚合的关系
. 聚合关系用空心的菱形+实线来表示
四:为什么尽量不要使用类继承而使用合成/聚合?
. 对象的继承关系在编译时就定义好了,所以无法在运行时改变从父类继承的子类的实现
. 子类的实现和它的父类有非常紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化
. 当你复用子类的时候,如果继承下来的实现不适合解决新的问题,则父类必须重写或者被其它更适合的类所替换
这种依赖关系限制了灵活性,并最终限制了复用性
五:合成/聚合复用原则结构图
1和2以及n,被称为基数,表示这一端的类可以有几个实例,很显然,一个人有两个胳膊,如果一个类可能有无数个实例,则用n表示,一人群可能有无数个人
0 0
- 设计模式六大原则--合成/聚合复用原则
- 设计模式六大原则(5)合成/聚合复用原则
- 【设计模式】六大原则之三(迪米特法则与合成/聚合复用原则)
- 设计模式六大原则(6):合成/聚合原则
- 设计模式六大原则——合成/聚合复用原则(CARP)
- 设计模式六大原则-单一职责原则、开放封闭原则、依赖倒转原则、里氏代换原则、迪米特法则、合成/聚合复用原则
- 设计模式六大原则(六)合成复用原则
- 设计模式原则(5)合成聚合原则
- 设计原则(6)-合成聚合复用原则
- 设计模式-OOD的设计原则(5)-"合成聚合复用原则"
- 设计模式-OOD的设计原则(5)-"合成聚合复用原则"
- 设计模式-OOD的设计原则(5)-"合成聚合复用原则"
- 设计模式-OOD的设计原则(5)-"合成聚合复用原则"
- 设计模式原则—合成/聚合复用原则(四)
- 设计模式之 合成聚合复用原则
- 设计模式—合成/聚合复用原则
- Java设计模式——合成/聚合复用原则
- 合成聚合复用原则(设计模式_23)
- Solr migration from 4.7.1 to Solr 5.0
- [C#]手把手教你打造Socket的TCP通讯连接(一)
- zoj 3781 Paint the Grid Reloaded 最短路变形
- 架构师之路(一)概念篇——选好了路子就走下去
- 用gradle编译module中的libs里的包
- 设计模式六大原则(5)合成/聚合复用原则
- PHP基础(在Dreamweaver8中使用)
- 广义表的C++实现(包含构造函数,拷贝构造函数,析构函数,获取表头,表尾,获取直接后继等操作)
- css瀑布流布局的几种实现方式
- Android activity的知识点
- 【最大流】【二分】[Scoi2012] bzoj2756 奇怪的游戏
- Activity的生命周期管理
- 设计模式六大原则(6):迪米特法则
- 释放自己内心的能量---赞一下周光耀老师