---
title: Mermaid 类图写法入门
canonical: "https://mermaid.vloam.com/zh/docs/class/"
pubDate: 2026-09-13
author: Vloam
description: 用精简可读的类图画出类型、字段、方法以及它们之间的关系；说明继承、组合、依赖等连线，并给出控制模型规模、命名与方法写法的实用建议，方便边画边改。
---

类图用来画类型，以及类型怎样连在一起。适合设计草图，不适合把整份代码倒进去。

## 声明类

```mermaid
classDiagram
  class User {
    +id string
    +email string
    +login()
  }
```

类块里的行是字段或方法。开头的 `+` 表示公开，`-` 表示私有，`#` 表示保护。

也可以只写名字：`class Session`。

## 画出关系

常见连线：

| 连线 | 含义 |
| --- | --- |
| `A <|-- B` | B 继承 A |
| `A *-- B` | A 拥有 B（组合） |
| `A o-- B` | A 包含 B（聚合） |
| `A --> B` | A 使用或指向 B |
| `A ..> B` | A 依赖 B |

可以在连线后加短标签：

```mermaid
classDiagram
  Editor --> Diagram : 构建
```

## 模型保持小

好的类图只回答一个问题，例如「谁负责渲染？」

- 一页尽量控制在五到八个类。
- 没有信息量的 getter/setter 可以省略。
- 除非读者真的需要，否则少放框架噪音（`BaseEntity` 之类）。

## 写作建议

- 尽量和代码里的名字一致。
- 方法名用动词：`render()`、`save()`、`reset()`。
- 只是弱关联时用 `-->`，不要轻易用拥有关系 `*--`。
