在UML中,关联,依赖,聚集,组成的联系十分紧密,不容易区分,本文试图用通俗的语言来讲解这四种关系的区别。
聚集:聚集也是一种关联,但是对于关联来讲,关联的双方都是对等的,没有主次之分,在聚集中,则有主次之分,“主”的一方只能有一个。那计算机来说,“计算机”是一个对象,他就是“主”,而“硬盘”,“主板”,“显示器”等等则是“次”的一方,“硬盘”,“主板”,“显示器”聚集成“计算机”,他们只是聚集的关系,主板完蛋了,并不影响显示器,所以大家可以理解为聚集中的对象,即是一个整体,又各自独立。
组成:组成是一种特殊的聚集(那当然也是关联喽),拿桌子来说吧,桌子有桌面和桌腿组成,然桌面没有了或桌腿没有了,都不能称之为桌子,这个意思就是说,对于组成对象的个部分来讲,他们有一个有机的整体,不可分割的整体。桌子对象(主体对象)要负责桌面,桌腿(“次”对象,主次之分的“次”)的生命周期。拿C++语言来讲,桌子对象内部含有桌面对象和桌腿对象的对象实例,这可不是指针喽,但在“聚集”中是指针,这也就是聚集和组成的区别。
~~The END~~
尹曙光
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。