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)

相关推荐
wp123_11 小时前
【硬件选型笔记】TONEVEE MVL4020-1R2M 与Coilcraft XAL4020-122MEC 大电流功率电感参数深度解析
笔记
aaaameliaaa1 小时前
指针之总结
c语言·笔记·算法
caimouse2 小时前
protoc-gen-c 支持 proto3 `optional` 关键字修改记录
c语言·学习
撩得Android一次心动2 小时前
Linux编程笔记3【个人用】
linux·笔记
憧憬成为java架构高手的小白2 小时前
黑马八股--中间件学习之MQ(RabbitMQ)
学习·中间件
撩得Android一次心动4 小时前
Linux编程笔记4【个人用】
linux·笔记·学习
user-猴子4 小时前
让网页“活”过来 —— 用AI打造会自主学习的动态知识图谱
人工智能·学习·知识图谱
网络工程小王5 小时前
【HCIE-AI】10.pytorch模型迁移分析
人工智能·学习·华为·llama
xqqxqxxq5 小时前
技术笔记:上下文工程(Context Engineering)心得总结(李博杰《深入理解 AI Agent》2.1,2.2观后总结)
人工智能·笔记
魔城烟雨6 小时前
从零开始学习betaflight《3-硬件接口设计规范标准》
学习·设计规范