当前位置: 首页 > news >正文

UML中类之间的六种主要关系

UML中类之间的六种主要关系: 继承(泛化)(Inheritance、Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)。

继承关系(泛化关系)(Inheritance):

描述:继承关系表示一个类派生自另一个类,继承关系用一条带空三角箭头的实线表示。子类继承了父类的属性和方法,并可以添加新的属性和方法。

示例:动物类继承自生物类,具备生物的属性和方法,并可以添加动物独有的属性和方法。

体现:子类继承父类。

符号:一条实线+空心箭头。

实现关系(Realization):

描述:实现关系表示一个类实现了一个接口,通常用一条带空三角箭头的虚线表示。接口定义了一组方法,而类实现了这些方法。

示例:一个类实现了图形接口,必须实现接口中定义的绘制图形的方法。

体现:实现接口或继承某个抽象类。

符号:一条虚线+空心箭头。

组合关系(Composition):

描述:组合关系也是整体与部分之间的关系,但在组合关系中,整体对象负责创建和管理部分对象的生命周期。它通常用一条带实心菱形的实线表示。

示例:计算机与CPU之间的组合关系,计算机包含CPU,且CPU的生命周期由计算机管理。

体现:成员变量。

符号:一条实线+实心菱形。

聚合关系(Aggregation):

描述:聚合关系是一种特殊的关联关系,表示整体与部分之间的关系,其中整体对象包含部分对象。它通常用一条带空心菱形的实线表示。

示例:车辆与引擎之间的聚合关系,车辆包含引擎,但引擎也可以存在独立于车辆。

体现:成员变量。

符号:一条实线+空心菱形。

关联关系(Association):

描述:关联关系表示类之间的连接,通常用一条实线连接类之间的名称。它指示两个类之间存在某种关联,但不提供关于关联性质的详细信息。

示例:学生与课程之间的关联,一个学生可以选择多门课程,一门课程也可以有多名学生。

体现:成员变量。

符号:双向关联: 一条实线 或 一条实线+两个箭头;单向关联: 一条实线+一个箭头。

依赖关系(Dependency):

描述:依赖关系表示一个类依赖于另一个类,通常在一个类中使用另一个类的对象或方法。它通常用一条虚线箭头连接依赖者和被依赖者。

示例:一个订单类依赖于客户类以获取客户信息。

体现:局部变量、方法的参数和静态方法的调用。

符号:一条虚线+箭头。 

http://www.lryc.cn/news/211832.html

相关文章:

  • 机器学习-朴素贝叶斯之多项式模型
  • 下载的nginx证书转换成tomcat证书格式
  • 计算机毕业设计选题推荐-社区志愿者服务微信小程序/安卓APP-项目实战
  • ES6中数值扩展
  • sql-50练习题11-15
  • 【多线程面试题十九】、 公平锁与非公平锁是怎么实现的?
  • 3.4每日一题(变量可分离方程通解)
  • LabVIEW背景颜色设为和其他程序或图像中一样
  • 图表参考线,数据对比一目了然_三叠云
  • 【深度学习】Transformer、GPT、BERT、Seq2Seq什么区别?
  • 数据结构与算法之LRU: 实现 LRU 缓存算法功能 (Javascript版)
  • Matlab | 基于二次谱提取地震数据的地震子波
  • 利用远程IO模块,轻松驾驭食品包装生产的自动化
  • 华为OD机考算法题:计算最大乘积
  • 用友 GRP-U8 存在sql注入漏洞复现
  • vue页面el-tab控件标签栏加入按钮功能
  • vue3使用ref和reactive
  • 7 款用于解锁iPhone密码的苹果解锁软件
  • .jnlp
  • Linux启动之uboot分析
  • element -plus table的二次封装
  • windows应用软件扫描报告 不告谱 要钱
  • 世界前沿技术发展报告2023《世界航空技术发展报告》(七)机载系统与武器技术
  • JAVA 学习笔记——抽象类
  • 磁盘调度算法之先来先服务(FCFS),最短寻找时间优先(SSTF),扫描算法(SCAN,电梯算法),LOOK调度算法
  • postman接口测试—Restful接口开发与测试
  • RK3568-emmc控制器
  • 02-操作符及类型转换与控制流程语句
  • 判断一个字符串中是否包含中文字符
  • 软件测试面试怎样介绍自己的测试项目?会问到什么程度?