UML中的组成和聚集

来源:互联网 发布:宣武医院网络挂号 编辑:程序博客网 时间:2024/05/02 10:06
UML中,聚集和组成是两个十分相似的概念.书上这样说:聚集是关联中的一种,聚集对象由部分对象组成;组合又是一种特殊的聚集。在一个组合对象中,部分对象只能作为组成对象的一部分与组合对象同时存在。
即是说,组合是“当聚集对象和它的组成对象之间是具有强关联的一种特殊聚集”,组合对象的关键特征是部分对象只能存在于组合对象之中,并且部分体的寿命可能比组合体短,但组合体消亡,部分体也必然消亡。


在http://xrinehart.cnblogs.com/archive/2005/04/20/141541.aspx中,也谈到了其中的区别,我觉得大致象那样说的.
比如聚集,强调的是整体-部分关联,比如家用计算机系统PC,由主机,键盘,鼠标,显示器,声卡等组成;
而组成则是强类型的聚集,聚集中的每个部分只能属于一个整体,如桌子,由桌面和桌腿组成,这个是区别.
,而也有另外的提法,也大同小异,如:

聚集可以进一步划分成共享聚集和组成。例如,课题组包含许多成员,但是每个成员又可以是另一个课题组的成员,即部分可以参加多个整体,我们称之为共享聚集。另一种情况是整体拥有各部分,部分与整体共存,如整体不存在了,部分也会随之消失,这称为组成。例如,我们打开一个视窗口,它就由标题、外框和显示区所组成。一旦消亡则各部分同时消失。在UML中,聚集表示为空心菱形,组成表示为实心菱形。

原创粉丝点击