UML学习笔记

前言

UML(Unified Modeling Language)是一种对软件密集系统进行可视化建模的一种语言。有了图后来就可以一目了然。

C++中有好多继承图,我都看不懂,所以就来学习一波~

  • -代表私有(private)的
  • +表示公共(public)的
  • #表示受保护的(pretected)
  • ~表示 package/default 在哪个包里面吗

继承(Generalization)

这里面的继承关系也被称为泛化(Generaliztion) ,指定了子类是如何特化父类的所有特征和行为的。

【语法】:空心三角形+实线,指向父类

  • 抽象基类的名用斜体
  • 类有:
    • 类名(class name)
    • 属性(properties)
    • 方法(method)

关联(Association)

表示一种拥有的关系,老虎拥有羊肉,老师拥有多个学生。也可以是双向的,学生也可以拥有多个老师。

【语法】:普通箭头+实线(或者是一根实现没箭头也可以) 指向被拥有者

聚合(Aggregation)

整体和部分的关系,part部分可以离开整体而单独存在

【语法】:带有空心菱形+普通箭头的实心线,菱形指向整体

组合(Composition)

整体和部分的关系,part部分不能离开整体作为一个单独存在。

【语法】:带有实心菱形+普通箭头的实心线,菱形指向整体

参考文章:

UML类图几种关系的总结

UML类图基本语法,这都看不懂就放弃学UML吧~

视频:

教你怎么画类图(Class Diagram)

相关推荐
航Hang*14 分钟前
Photoshop 图形与图像处理技术——第1章:数字图像基本知识
图像处理·笔记·ui·photoshop
iconball2 小时前
个人用云计算学习笔记 --37 Zabbix
运维·笔记·学习·云计算·zabbix
FPGAI3 小时前
Java学习之计算机存储规则、数据类型、标识符、键盘录入、IDEA
java·学习
Yiii_x3 小时前
Object类与包装类
java·经验分享·笔记·课程设计·ai编程
四谎真好看3 小时前
MySQL 学习笔记(运维篇1)
运维·数据库·笔记·学习·mysql·学习笔记
hssfscv4 小时前
Javaweb学习笔记——Web
笔记·学习·web
随意起个昵称4 小时前
【题解学习】序列题
学习·算法
摇滚侠4 小时前
RocketMQ 教程丨深度掌握 MQ 消息中间件,rocketmq 安装,控制台,笔记 21-27
笔记·rocketmq·java-rocketmq
李派森4 小时前
软考高项(信息系统项目管理师)—第22章 组织通用治理全解析
网络·笔记·计算机网络
AI视觉网奇4 小时前
ue重定向学习笔记
笔记·ue5