首页 > 其他 > 详细

UML中聚合和组合的区别

时间:2014-03-26 11:41:10      阅读:565      评论:0      收藏:0      [点我收藏+]

  聚合

  聚合其实是关联的一个特例,表示了两个对象之间“part of(部分-整体)”的关系,是一种弱关联,部分的生命周期可以超越整体。在UML中,用整体端有空心菱形箭头的双向关联修饰聚合。聚合的示例如下图:

  bubuko.com,布布扣

  组合

  组合其实是一种强形式的聚合,它具有强的拥有关系,整体与部分的生命周期是一致的。“部分”生存在整体中,它们与“整体”一起消亡。

    “部分”对象依赖于“整体”对象,这种依赖性表现在两个方面:

    第一、“部分”对象一次只能属于一个组合对象;第二、当组合对象销毁时,它的所有从属部分必须同时销毁。

    整体的重数必须是0或1。“部分”不能在整体间进行共享。在UML中,用整体端有实心菱形箭头的双向关联修饰组合。

  聚合的示例如下图:

  bubuko.com,布布扣 

  上图中,邮件和它的标题及正文之间的关系作为组合关系建模可能是合理的,因为一旦邮件被删除,就既不存在标题,也不存在正文体了,而它们存在时属于唯一的一个邮件。而邮件与附件之间的关系不太可能是用组合恰当的建模,因为在同一时间,同一个附件可以属于多个邮件,其次,很有可能附件可以保存,因此它们的生命周期将超过所附属的邮件的生命周期。

  

UML中聚合和组合的区别,布布扣,bubuko.com

UML中聚合和组合的区别

原文:http://www.cnblogs.com/dazuihou/p/3620768.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!