UML中的关联,聚合,组合

首先要明白:聚合,组合是关联的特殊形式,之所以出现这两个名词,只是为了表达的更加具体、明白。


UML的创始人就说过,“UML只是为了沟通,它本身的形式并不重要”!!!


所以要达到这个目标,就要将关系描述的尽可能的具体、明白!


关联:

比较泛的感念,两个类之间只要扯上关系都可以看成是“关联”;然而这一词不太能准确表达其更精准的含义,或者说,要表达清楚的话,需附加很多信息,比较复杂。

为此提出如下两个概念。


UML有一种说法:

不存在“聚合”的关联-----就是关联;

共享“聚合”的关联-----就是聚合;

组合“聚合”的关联-----就是组合;


聚合:

它的含义在于”共享“,主类中的从类是否被其它类所共享?是,则为聚合;


组合:

它的含义在于”组合“,主类中的从类是用来组成主类的,没有了主类,从类也就没有意义了,这就是组合。


总结:关联,聚合,组合,只是语义有所不同,目标是为了表达更清楚、明白。

相关文章

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