实例讲解 Mermaid 类图语法,不会画图也能画类图,程序员专属画图工具

Mermaid 图表类图语法示例:

  • 接口 <<interface>>
  • 抽象类 <<abstract>>
  • 服务类 <<service>>
  • 枚举类 <<enumeration>>

类的类型书写方式如下:

    
        
            classDiagram
class A {
<<interface>>
}
class B {
<<abstract>>
}
class C {
<<service>>
}
class D {
<<enum>>
}

        
    
language 复制
classDiagram
class A {
<<interface>>
}
class B {
<<abstract>>
}
class C {
<<service>>
}
class D {
<<enum>>
}

Snipaste_2025-07-27_12-59-48.jpg

类定义如下:

    
        
            classDiagram
class A
	A: +num int // 公有成员
	A: -age int	// 私有成员
	A: +action bool // 公共方法
	A: +abstractMethod()* // 抽象方法
	A: -staticMethod()$ // 静态方法
	

        
    
language 复制
classDiagram
class A
	A: +num int // 公有成员
	A: -age int	// 私有成员
	A: +action bool // 公共方法
	A: +abstractMethod()* // 抽象方法
	A: -staticMethod()$ // 静态方法

Snipaste_2025-07-27_13-00-16.jpg

关系

符号 关系类型
<|-- inheritance(继承)
*-- Composition(组合)
o-- Aggregation(聚合)
--> Association(关联)
-- Link(solid)连接(实线)
..> Dependency(依赖)
..|> Realization(实现)
.. Link(Dashed)连接(虚线)
    
        
            classDiagram
	direction TB
    A "1" <|-- "n" B : 继承
    C *-- D : 组合
    E o-- F : 聚合
    H <-- I : 关联
    J -- K : 连接(实线)
    L <.. M : 依赖
    N <|.. O : 实现
    P .. Q : 连接(虚线)

        
    
language 复制
classDiagram
	direction TB
    A "1" <|-- "n" B : 继承
    C *-- D : 组合
    E o-- F : 聚合
    H <-- I : 关联
    J -- K : 连接(实线)
    L <.. M : 依赖
    N <|.. O : 实现
    P .. Q : 连接(虚线)

Snipaste_2025-07-27_13-00-28.jpg

图表呈现方向

上下:TB

左右:LR

    
        
            erDiagram
CUSTOMER ||--o{ ORDER : places
ORDER ||--|{ LINE-ITEM : contains
CUSTOMER }|..|{ DELIVERY-ADDRESS : uses 

        
    
language 复制
erDiagram
CUSTOMER ||--o{ ORDER : places
ORDER ||--|{ LINE-ITEM : contains
CUSTOMER }|..|{ DELIVERY-ADDRESS : uses 

Snipaste_2025-07-27_13-00-40.jpg