首先要明白:聚合,组合是关联的特殊形式,之所以出现这两个名词,只是为了表达的更加具体、明白。
UML的创始人就说过,“UML只是为了沟通,它本身的形式并不重要”!!!
所以要达到这个目标,就要将关系描述的尽可能的具体、明白!
关联:
比较泛的感念,两个类之间只要扯上关系都可以看成是“关联”;然而这一词不太能准确表达其更精准的含义,或者说,要表达清楚的话,需附加很多信息,比较复杂。
为此提出如下两个概念。
UML有一种说法:
不存在“聚合”的关联-----就是关联;
共享“聚合”的关联-----就是聚合;
组合“聚合”的关联-----就是组合;
聚合:
它的含义在于”共享“,主类中的从类是否被其它类所共享?是,则为聚合;
组合:
它的含义在于”组合“,主类中的从类是用来组成主类的,没有了主类,从类也就没有意义了,这就是组合。
总结:关联,聚合,组合,只是语义有所不同,目标是为了表达更清楚、明白。
原文链接:https://www.f2er.com/javaschema/285761.html