UML中的六种关系

一 UML中的几种关系
在这里插入图片描述

(1)关联关系

关联关系表示类与类之间的连接,它使得一个类知道另外一个类的属性和方法。

关联关系可以使用单箭头表示单向关联,使用双箭头或者不使用箭头表示双向关联。
在这里插入图片描述

(2) 聚合关系

聚合时关联关系的特例,是强的关联关系,聚合是整个与个体的关系,即has-a关系,此时整体和部分是可以分离的,他们具有各自生命周期,部分可以属于多个对象,也可以被多个对象共享;比如计算机和CPU,公司和员工的关系;在代码层面聚合和关联是一致的,只能从语义上区分。

在这里插入图片描述

(3)组合关系
组合也是关联关系的一种特例,体现的时一种contain-a关系,比聚合更强,是一种强聚合关系。它同样体现整体和部分的关系,但此时整体与部分是不可分的,整体生命周期的结束也意味着部分生命周期的结束,反之亦然。比如大脑和人类。

组合与聚合几乎完全相同,唯一区别就是对于组合,“部分”不同脱离“整体”单独存在,其生命周期应该是一致的。
在这里插入图片描述

(4)泛化关系

泛化关系是指一个类(子类 子接口)继承另外一个类(称为父类 父接口)的功能,并可以增加它自己新功能的能力,继承时类与类或者接口与接口最常见的关系。

在这里插入图片描述

(5)实现关系

实现是指一个class实现interface接口(一个或者多个),表示类具备了某种能力,实现是类与接口中最常见的关系。

yi在这里插入图片描述](https://img-blog.csdnimg.cn/20181204164358290.png)

(6)依赖关系

依赖关系也是表示类与类之间的连接,表示一个类依赖与另外一个类的定义,依赖关系是单向 。简单理解就是类A使用到了类B,这种依赖具有偶然性,临时性,是非常弱的关系。但是类B的变化会影响到类A。举个例子,如某人要过河,则人与船的关系就是依赖,人过河之后,与船的关系就解除了,因此是一种弱连接。
在这里插入图片描述

总结:
主要是关联关系的细化需要注意强弱 由弱到强分别是 依赖<关联<聚合<组合。

猜你喜欢

转载自blog.csdn.net/MyxZxd/article/details/84791351