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

二、《重学设计模式》-UML类图

UML类图常用的6种关系

  • 依赖
  • 泛化(继承)
  • 实现
  • 关联
  • 聚合
  • 组合
类图常用表示图

在这里插入图片描述

依赖、泛化、实现都是从 依赖谁、继承谁、实现谁,箭头就指向谁

组合和聚合 都是从部分指向整体,菱形都指向整体

关联都是谁关联谁,箭头就指向谁

依赖(虚线实心箭头)

类中使用到对方,例如成员属性,方法参数或者返回值,局部变量

泛化(实现空心箭头)

泛化就是继承,如果B类继承了A类,那么可以说AB类存在泛化关系

实现(虚线空心箭头)

类B实现了接口A , 那么就可以说B实现了A

关联

一对一关联 :一个人只能一个默认收货地址

多对多关联:一个学生有多个老师,一个老师有多个学生

自关联:树形结构

Tree{
    T value;
    Tree nextNode;
}

聚合(实现空心菱形)

实现部分和整体的关系,但是部分与整体是可拆分状态

例如:台式机包含机箱、显示器、鼠标、键盘,如果没有显示器,也可以通过远程登录的方式进行访问,所以显示器和台式机的关系就是聚合关系

组合(实线实心菱形)

实现部分与整体的关系,但是部分与整体不可拆分

例如:每个人都有身份证,每个人也都有头,但是人可以丢身份证,但是人不可以丢脑袋,所以身份证和人的关系是聚合,脑袋和人的关系就是组合

http://www.dtcms.com/a/25981.html

相关文章:

  • 在虚拟机中搭建Spark学习环境的完整指南
  • priority_queue创建堆
  • Vue3.5 企业级管理系统实战(七):Sidebar组件开发 1
  • 1-18 GIT设置公钥
  • 容器docker k8s相关的问题汇总及排错
  • 高并发系统架构设计全链路指南
  • Vue学习记录20
  • mac os设置jdk版本
  • 电脑网络图标消失了怎么办?(Windows电脑网络或WiFi图标消失,如何找回?)
  • Vue3 前端路由配置 + .NET8 后端静态文件服务优化策略
  • 蓝桥杯备考:贪心算法之排座位
  • 字符设备驱动
  • 2024华为OD机试真题-第k个排列(C++/Java/Python)-E卷-100分
  • Mac OS JAVA_HOME设置
  • 【数据分析】2.数据分析业务全流程
  • LLM 推理中推理-时间计算技巧
  • debian 12 安装 NVIDIA 390驱动记录
  • 6.3 DBMS的功能和特征
  • 网络安全治理模型
  • 自由学习记录(36)
  • C#的序列化[Serializable()]
  • [AI]docker封装包含cuda cudnn的paddlepaddle PaddleOCR
  • OkHttp使用和源码分析学习(一)
  • 【设计模式】【创建型模式】原型模式(Prototype)
  • 免费搭建个人网站
  • Java 比较器:Comparable vs. Comparator
  • XTOP3D的DIC技术在极端条件下的应用解决方案
  • Pyecharts系列课程07——饼图(Pie)
  • 【AI实践】阿里百炼文本对话Agent安卓版搭建
  • SpringBoot速成概括