简介 / Introduction
类图(Class Diagram)是 UML 的核心图之一,用来描述系统中类与类之间的静态关系。无论你用 PlantUML 还是 Mermaid,都能快速画出这 6 种常用关系:关联、聚合、组合、继承、依赖、实现。
PlantUML 版
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| @startuml hide circle skinparam classAttributeIconSize 0
class 司机 class 汽车 class 引擎
' 关联(Association) Driver "1" -- "1" Car : drives >
' 聚合(Aggregation) Car o-- "1" Engine : has >
' 组合(Composition) Car *-- "1..4" Wheel : has >
' 继承(Generalization) Sedan --|> Car
' 依赖(Dependency) Car ..> Driver : creates
' 实现(Realization) ICruiseControl <|.. CruiseControl
class ICruiseControl class CruiseControl @enduml
|
Mermaid 版
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| classDiagram class 司机 class 汽车 class 引擎
class ICruiseControl class CruiseControl
司机 "1" -- "1" 汽车 : drives 汽车 o-- "1" 引擎 : has 汽车 *-- "1..4" 轮子 : has 轿车 --|> 汽车 汽车 ..> 司机 : creates ICruiseControl <|.. CruiseControl
|
对比 / Side-by-side
| 关系类型 |
PlantUML 箭头 |
Mermaid 箭头 |
| 关联 Association |
-- |
-- |
| 聚合 Aggregation |
o-- |
o-- |
| 组合 Composition |
*-- |
*-- |
| 继承 Generalization |
--|> |
--|> |
| 依赖 Dependency |
..> |
..> |
| 实现 Realization |
<|.. |
<|.. |
小结 / Wrap-up
PlantUML 与 Mermaid 的类图关系箭头高度一致,学习成本很低。实线(--)表示结构关系,虚线(..)表示动态依赖。箭头朝向也很直观:箭头指向被依赖方,组合优于聚合,聚合优于普通关联。