Mermaid类图中UML关系简介
Mermaid类图中UML关系简介Mermaid表示法UML类图关系继承实现组合聚合关联依赖类图中常用的六种关系:继承、实现、组合、聚合、关联、依赖Mermaid表示法https://mermaid-js.github.io/mermaid/#/classDiagram?id=defining-relationship类型描述图例<|--继承,Inheritance<|..实现,Rea
类图中常用的六种关系:继承、实现、组合、聚合、关联、依赖
Mermaid表示法
https://mermaid-js.github.io/mermaid/#/classDiagram?id=defining-relationship
类型 | 描述 | 图例 |
---|---|---|
<|-- | 继承,Inheritance | |
<|.. | 实现,Realization | |
*-- | 组合,Composition | |
o-- | 聚合,Aggregation | |
<-- | 关联,Association | |
-- | 实线链接,Link (Solid) | |
<.. | 依赖,Dependency | |
.. | 虚线链接,Link (Dashed) |
UML类图关系
UML,全称Unified Modeling Language,统一建模语言。
继承
继承关系又名泛化关系(Generalization),表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。
箭头指向:带三角箭头的实线,箭头指向父类
示例:
classDiagram
Animal <|-- Tiger
Animal <|-- Lion
实现
实现关系就是接口和实现类之间的关系。类实现了接口中的抽象方法。
箭头指向:带空心三角箭头的虚线,箭头从实现类指向接口
示例:
classDiagram
University <|.. Tsinghua
University <|.. Peking
}
组合
表示整体和部分之间的关系,但部分不能离开整体而单独存在
箭头指向:带实心菱形的实线,菱形指向整体
示例:
classDiagram
Body *-- Brain
Body *-- Heart
聚合
表示整体和部分之间的关系,成员是整体的一部分,成员也可以脱离整体而存在
箭头指向:带空心菱形的实线,菱形指向整体
示例:
classDiagram
School o-- Teacher
School o-- Student
关联
表示类之间的引用关系
箭头指向:单向关联用一个带箭头的实线表示,箭头从使用类指向被关联的类;双向关联用没有箭头的实线来表示
示例:
classDiagram
Teacher -- Student
Student --> Course
上图表示老师和学生之间的关系是双向的,一个老师可以有多个学生,一个学生也可以有多个老师。学生和课程之间是单向的,一个学生会学习多门课程,而课程是一个抽象的概念,它不拥有学生。
依赖
表示某个类依赖于另外一个类,通常表现为,某个类的方法的参数使用了另外一个类的对象。
箭头指向:带箭头的虚线,箭头从使用类指向被依赖的类
示例:
classDiagram
Computer <.. Programmer
Programmer : +coding(Computer pc) void
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)