设计模式基础:类与类之间的各种关联关系描述
2024-02-24 本文已影响0人
小动乾坤
1.依赖
特殊,比较泛化的概念,其余类之间的静态关系都是依赖关系的一种特例
A类用到了B类即A依赖B
1.B作为A的成员变量
2.B作为A的方法的入参部分
3.B作为A的方法的返回值部分
4.B在A的某个方法里直接使用
2.泛化
类之间的继承关系:依赖关系的一种特例
3.关联:依赖关系的一种特例
1.单向关联关系
案列:A类依赖B,但是B类并不依赖A,此种关联关系即为单向关联关系
2.双向关联关系
案列:A类依赖B类,且B类也依赖A类,此种关联关系即为双向关联关系
4.聚合:关联关系的一种特例
一个主体定义以及对这个主体定义的外部特征描述之间就是组合关系,没有这些个外部特征描述不影响主体概念的实际存在
案列:人这个概念和衣物鞋帽之间的关系,人这个主体定义的成立与否不受其修饰物件的影响,有没有相应的衣物鞋帽部件不重要,代码中的体现就是变量声明时不需要即刻显式的创建对象
5.组合:关联关系的一种特例
辅助理解说明同一个概念整体描述和细节描述的区别
多个部件组合在一起才是一个整体概念,这个整体概念缺了这其中的任何一个部件或局部定义都不成立,那么这个整体和这些局部部件或概念之间就是组合关系,部件组合在一起才是一个整体
案列:人这个概念和其局部器官的概念之间是组合关系,人这个整体概念里没有定义心脏这个局部概念就不是原本“人”要表达的概念,代码中的体现是成员变量直接在声明的时候就创建对象,确保整体和部件之间的组成关系
6.实现:依赖关系的一种特例
接口和类之间的实现关系
设计模式是一种思想,要严格的定义它,然后才能描述它,然后才能看懂,学懂,不然就会出现这样的情况:别人讲的天花乱坠,你听的稀里糊涂!