1.定义:尽量使用对象组合/聚合,而不是继承关系达到软件复用的目的 2.聚合has-A和组合contains-A 3.优点:可以使系统更加灵活,降低类与类之间的耦合度,一个类的变化对其他类造成的影响相对较少 4.思考:何时使用合成/聚合、继承?聚合has-A、组合contains-A、继承is-A ...
分类:
其他好文 时间:
2019-01-01 17:21:48
阅读次数:
233
困难是一位严厉的老师,他产生于克服困难的努力中。 # # # class Page:# def __init__(self,lst,pagesize):# self.lst =lst# self.pagesize = pagesize## def start(self,a):# return a## ...
分类:
其他好文 时间:
2018-11-09 00:02:29
阅读次数:
138
设计模式的本质是为了遵循设计原则,设计模式是设计原则的具体化表现形式,本文对六大设计原则进行了简单介绍,开闭原则是根本,单一职责,里氏替换,接口隔离,依赖倒置,组合聚合法则以及迪米特法则,对设计模式进行了一个浅浅的介绍,以进一步往后学习设计模式。 ...
分类:
其他好文 时间:
2018-11-04 14:22:08
阅读次数:
233
聚合属于拥有那些不能决定一个类“存活”的属性,而组合包含。 这两种关系需要站在某个角度上来确定。例如: 一匹能跑的马,这个类聚合元素可以耳朵,尾巴或者鬃毛。因为这些都不影响马是否能跑。而有无心脏或者一条腿却都能直接决定着马是否能跑,这种属性属于组合。 ...
分类:
其他好文 时间:
2018-10-27 13:30:13
阅读次数:
145
http://www.cnblogs.com/wolf-sun/p/3420120.html 1、类的表示。【类名称,属性,方法】。 2、类与类之间的关系。 2.1、单向关联/双向关联/自关联关系。 2.2、继承/实现关系。 2.3、组合/聚合关系。当需要表达类之间有整体-部分关系的时候,我们就可以 ...
分类:
其他好文 时间:
2018-06-14 01:14:24
阅读次数:
184
1、类的表示。【类名称,属性,方法】。 2、类与类之间的关系。 2.1、单向关联/双向关联/自关联关系。 2.2、继承/实现关系。 2.3、组合/聚合关系。当需要表达类之间有整体-部分关系的时候,我们就可以使用组合或者聚合。 2.4、依赖关系。 ...
分类:
其他好文 时间:
2018-06-14 01:02:51
阅读次数:
162
面向对象七大设计原则 1、 开闭原则 2、 里氏替换原则 3、 单一职责原则 4、 接口隔离原则 5、 依赖倒置原则 6、 迪米特原则 7、组合/聚合复用原则 原则一:(SRP:Single responsibility principle)单一职责原则又称单一功能原则 核心:解耦和增强内聚性(高内 ...
分类:
其他好文 时间:
2018-03-10 16:06:28
阅读次数:
184
面向对象七大设计原则 1、 开闭原则 2、 里氏替换原则 3、 单一职责原则 4、 接口隔离原则 5、 依赖倒置原则 6、 迪米特原则 7、组合/聚合复用原则 原则一:(SRP:Single responsibility principle)单一职责原则又称单一功能原则 核心:解耦和增强内聚性(高内 ...
分类:
其他好文 时间:
2018-01-14 22:50:46
阅读次数:
224
横向关系 依赖 关联 聚合 组合 判断方法: 生命周期有关系:组合,聚合 聚合:包含多个相同的类 组合:定义的时候就要有 依赖:只要使用就必须要有 关联:可有可无 纵向关系 继承 基类( 父类 )->派生类(子类) ...
分类:
其他好文 时间:
2017-11-29 23:38:51
阅读次数:
153
复用一个类的时候,多使用对象的组合/聚合的关联关系,而不是继承。 之前提到的“依赖倒转原则”,是以里氏代换原则为基础的实现开闭原则目标的手段,这一条路线涉及到的是类的继承(包括单继承和接口实现),他们支撑了Java多态的特性。 但是今天要谈一谈Java另一个特性——封装。封装就是不要暴露过多的基类内 ...
分类:
其他好文 时间:
2017-09-09 00:48:56
阅读次数:
208