在类图中,方块表示类,连线表示类之间的关系
关联 association
关联是一种非常宽泛的关系,如果两个类之间需要通信,就是关联关系
连线格式为普通箭头,箭头方向表示通信方向
classDiagram
Owner --> Pet : feed
可以存在双向通信关系,箭头为双向箭头
classDiagram
Teacher "learn from" <--> "teach" Student
聚合 aggregation
一个类,内部包含其它类的实例
不存在强的生命周期约束,没有强独占性
学生本身是独立存在的,但是班级主动和学生产生了聚合关系
一个班级中包含多个学生,如果班级不存在,学生仍旧可存在,班级的生命周期不影响学生
连线为空心的菱形
classDiagram
Class o-- Student
组合 composition
一个类,内部包含其它类的实例
有强生命周期关联
一个 person,由 head hand leg 等器官组成
假如这个人的生命结束,这些器官存在就失去了意义
有一种独占性,Head 只归属于 Person 所有,没有其它类和其产生关系
连线为实心的菱形
classDiagram
Person *-- Head
Person *-- Hand
Person *-- Leg
继承,泛化 inheritance / generalization
类的继承关系,连线格式为空心三角箭头
classDiagram
Parent <|-- Child