关联、聚合、组合、依赖、泛化

关联[聚合<组合]<依赖

关联

关联表示类型之间存在着关系。


关联中包含了两种特别的类型:聚合和组合。

聚合

指定了两个对象之间的 整体/部分关系,也就是一个has-a关系,在图形上用一条带有空心菱形的线段表示, 空心菱形指向容器类型
注意:聚合中,被包含对象并不完全依赖于容器对象。也就是说两者可以独立存在,若销毁容器,也不一定影响到被包含对象。

组合(复合)

一个对象完全拥有了被包含的对象。组合的关联程度比聚合更加强烈,被包含对象不能独立存在,若销毁容器,则被包含对象也会同时销毁。

泛化(继承)

表示一个类型是另一个类型的特例,定义了一种is-a关系。

依赖

一个类型需要依靠另一个类型才能实现,若修改某个类型会影响到另一个类型。

Client依赖supplier,若修改supplier,那么Client的功能可能会被破坏。

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...