UML中依赖和关联,关联,聚合和组合的区别

在UML中,依赖和关联经常无法进行区分,在类图中,不知道什么时候使用依赖,什么时候使用关联,来定义两个类之间的关系。

今天看了一篇帖子,对这两种关系做了比较生动的区分

依赖指的是两个类之间发生的关系输入偶然发生的,例如人和船之间的关系就是这种,人偶尔才会坐船,因此属于依赖关系,这种例子还包括人和计算机,企鹅和天气气候之间的关系,如果在代码层面的话,这两个类之间通常输入在一个类的函数中用到了另一个类的实例做为参数。

而关联则表明两个类之间的关系属于长期固定的关系,而不是在偶发场景下才发生关系,例如丈夫和妻子,老师和学生等。

引用:https://www.cnblogs.com/liuzhang/archive/2013/03/17/2964095.html

而关联,聚合,组合之间的区别在于:

组合是两个类中被包含的那个类不能独立于包含它的类,那么这两个类就属于组合关系,在组合的关系中,被包含的类的对象不能作为可以独立作用的对象。

聚合是指包含的类和被包含的类的对象之间是相对独立的,被包含的类的的对象可以作为的对象在系统中产生作用。

关联于组合以及聚合之间最大的区别在于一个类的对象是否包含另一个类的对象,bu若不包含,那么属于关联,否则呼吁聚合或者组合。

猜你喜欢

转载自blog.csdn.net/CHALLENG_EVERYTHING/article/details/81357871
今日推荐