流程建模语言 UML

UML全称:Unified Modeling Language

泛化/继承关系:结构关系 Generalization

面向对象语言中的继承关系,逻辑上可以用"is a"表示
代码体现:子类继承父类。
UML符号:一条实线+空心箭头。
在这里插入图片描述

实现关系:类之间 Realization

说明:和泛化关系相似,逻辑上也是用"is a"表示。区别在于实现关系继承一个抽象类(abstract、interface)
而泛化关系继承一个具体类。
代码体现:实现接口或继承某个抽象类。
UML符号:一条虚线+空心箭头。
在这里插入图片描述

组合关系:比聚合关系强的关系。它要求普通的聚合关系中代表整体的对象负责代表部分对象的生命周期,组合关系是不能共享的Composition

代表整体的对象需要负责保持部分对象和存活,在一些情况下将负责代表部分的对象湮灭掉。代表整体的对象可以将代表部分的对象传递给另一个对象,由后者负责此对象的生命周期。换言之,代表部分的对象在每一个时刻只能与一个对象发生组合关系,由后者排他地负责生命周期。部分和整体的生命周期一样。
说明:是整体与部分的关系,但部分不能脱离整体而独立存在。逻辑上能用"has a/is a part of"表示。
代码体现:成员变量。
UML符号:一条实线+实心菱形。
在这里插入图片描述

聚合关系:强的关联关系,聚合是整体和个体之间的关系。Aggregation

说明:是整体与部分的关系,部分能脱离整体而独立存在。逻辑上能用"has a/is a member of"表示。
代码体现:成员变量
UML符号:一条实线+空心菱形
在这里插入图片描述

关联关系:类与类之间的联接,它使一个类知道另一个类的属性和方法 Association

说明:是整体与部分的关系。逻辑上能用"has a"表示。
代码体现:成员变量。
UML符号:
双向关联,一条实线或一条实线+两个箭头;
单向关联,一条实线+一个箭头。
在这里插入图片描述
在这里插入图片描述

依赖关系:(Dependency)

说明:是一种使用关系,即一个类的实现需要另一个类的协助。逻辑上能用"use a"表示。
尽量不要使用双向依赖。
代码体现:局部变量、方法的参数和静态方法的调用。
UML符号:一条虚线+箭头。
在这里插入图片描述
例如,一个人(Person)可以买车(car)和房子(House),Person类依赖于Car类和House类的定义,因为Person类引用了Car和House。
与关联不同的是,Person类里并没有Car和House类型的属性

六种关系的耦合度大小是:泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值