UML类图讲解 ~附带图片简单易懂

368 阅读2分钟

基本介绍

UML-Unified modeling language (统一建模语句)

  • 用于方便快速描述软件模型中各个元素之间的关系

有如下6中关系: 依赖泛化实现关联聚合组合

一、依赖关系

Dependency

依赖关系

介绍

类中使用到了对方,那么他们之间就存在依赖关系

5种依赖方式:

  1. 类中用到了对方
  2. 是类的成员变量
  3. 是方法的返回参数
  4. 是方法接收的参数类型
  5. 方法中使用到 案例

其对应的UML图 在这里插入图片描述

二、泛化关系

关键字:extends

Generalization

在这里插入图片描述

介绍

泛化关系实际上就是继承关系,他是依赖关系的特例

案例

在这里插入图片描述

对应的类图(记得箭头指向父类) 在这里插入图片描述

三、实现关系

关键字:implements

Realization

在这里插入图片描述

介绍

实现关系实际上就是A类实现B类,他是依赖关系的特例

案例

在这里插入图片描述

对应的类图(记得箭头指向父类)

在这里插入图片描述

四、关联关系

介绍

  1. 关联关系实际上是类与类之间的联系,他是依赖关系的特列
  2. 关联具有导航性:即双向关系或者单向关系
  3. 关系具有多重性:
    • 如“1”表示有且仅有1个
    • “0...”表示0个或者多个
    • “0,1”表示0个或者1个
    • “n...m”表示n到m个
    • “m...“表示至少m个

单向一对一

可以看到IDCard中并没有写Person成员

在这里插入图片描述

在这里插入图片描述

双向一对一

在这里插入图片描述 在这里插入图片描述

五、聚合关系

Aggregation

在这里插入图片描述

介绍

聚合关系:整体和部分的关系,整体与部分可以分开,是关联关系的特例,也具有导航性与多重性

二者可以分开

应用

在这里插入图片描述 类图如下 在这里插入图片描述

六、组合关系

Composite

在这里插入图片描述

介绍(与五相反)

组合关系:整体和部分的关系,整体与部分不可以分开

二者不可以分开,比如在内部new出来的类

当然级联操作下的两个类也可以视作组合关系

案例

在这里插入图片描述 类图如下 在这里插入图片描述