uml之聚合关系

前端之家收集整理的这篇文章主要介绍了uml之聚合关系前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

http://kisseveryone.blog.51cto.com/336052/65364

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。 http://www.jb51.cc/article/p-cnqafquj-cb.html
聚合
聚合是一种特别类型的关联,用于描述“总体到局部”的关系。在基本的聚合关系中, 分类 的生命周期独立于 整体类 的生命周期。
举例来说,我们可以想象, 是一个整体实体,而 车轮 轮胎是整辆车的一部分。轮胎可以在安置到车时的前几个星期被制造,并放置于仓库中。在这个实例中,Wheel类实例清楚地独立地Car类实例而存在。然而,有些情况下, 部分 类的生命周期并 独立于 整体 类的生命周期 -- 这称为合成聚合。举例来说,考虑公司与部门的关系。 公司和部门 都建模成类,在公司存在之前,部门不能存在。这里Department类的实例依赖于Company类的实例而存在。
让我们更进一步探讨基本聚合和组合聚合。
基本聚合
有聚合关系的关联指出,某个类是另外某个类的一部分。在一个聚合关系中,子类实例可以比父类存在更长的时间。为了表现一个聚合关系,你画一条从父类到部分类的实线,并在父类的关联末端画一个未填充棱形。图 12 显示车和轮胎间的聚合关系的例子。
图 12: 一个聚合关联的例子
组合聚合
组合聚合关系是聚合关系的另一种形式,但是子类实例的生命周期依赖于父类实例的生命周期。在图13中,显示了Company类和Department类之间的组合关系,注意组合关系如聚合关系一样绘制,不过这次菱形是被填充的。
图 13: 一个组合关联的例子

本文出自 “KissEveryone的博客博客,请务必保留此出处http://www.jb51.cc/article/p-cnqafquj-cb.html


一个体现了整体和局部的关系,子类实例可以独立存在 // 车 - 车轮

一个体现了从属关系,没有父类就没有子类实例存在的意义 // 公司 - 部门

猜你在找的设计模式相关文章