前言
UML(Unified Modeling Language)是一种对软件密集系统进行可视化建模的一种语言。有了图后来就可以一目了然。
C++中有好多继承图,我都看不懂,所以就来学习一波~
-
代表私有(private)的+
表示公共(public)的#
表示受保护的(pretected)~
表示 package/default 在哪个包里面吗
继承(Generalization)
这里面的继承关系也被称为泛化(Generaliztion) ,指定了子类是如何特化父类的所有特征和行为的。
【语法】:空心三角形+实线,指向父类
- 抽象基类的名用斜体
- 类有:
- 类名(class name)
- 属性(properties)
- 方法(method)
关联(Association)
表示一种拥有的关系,老虎拥有羊肉,老师拥有多个学生。也可以是双向的,学生也可以拥有多个老师。
【语法】:普通箭头+实线(或者是一根实现没箭头也可以) 指向被拥有者
聚合(Aggregation)
整体和部分的关系,part部分可以离开整体而单独存在。
【语法】:带有空心菱形+普通箭头的实心线,菱形指向整体
组合(Composition)
整体和部分的关系,part部分不能离开整体作为一个单独存在。
【语法】:带有实心菱形+普通箭头的实心线,菱形指向整体
参考文章:
视频: