类图

类图是最常见的 UML 图表类型,用于通过展示类、其属性、操作和关系来对系统的静态结构建模。

创建类

使用类工具

在 UML 类图 页面上,按 U 或从工具栏的 UML 菜单中选择 类。在画布上点击以放置一个类框,或拖动以设置其大小。选中类后按 Return 可重命名它。

类框结构

一个 UML 类框由三个分区组成:

  1. 名称分区 - 包含类名和可选的构造型
  2. 属性分区 - 列出类的属性/字段
  3. 操作分区 - 列出类的方法/函数

类属性

选中一个类,使用检查器的 排列 标签页 → UML 部分来配置它的属性:

名称

类名以粗体显示在顶部分区中。惯例使用 PascalCase(例如 CustomerOrder)。

构造型

可选的分类符,以书名号形式显示在类名上方:

  • <<interface>> - 用于接口定义
  • <<abstract>> - 用于抽象类
  • <<enumeration>> - 用于枚举类型
  • <<entity>> - 用于领域实体
  • 也支持自定义构造型

抽象

切换后以斜体渲染类名,表示这是一个抽象类。

约束调整大小

开启时(默认状态),调整大小会保持类框的比例。

属性

属性表示类的数据/属性。

添加属性

  1. 选中该类
  2. 在 UML 部分找到 属性 ——一个多行编辑器,每行一个属性
  3. 点击 +(或按 Cmd+L)添加新属性,然后输入其详细信息

属性语法

属性遵循以下格式:可见性 名称 : 类型

可见性修饰符:

符号含义说明
+公有可从任何位置访问
-私有仅可在类内部访问
#受保护可在类及其子类中访问
~包可在同一包内访问

示例:

  • -id: Int - 私有整数 ID
  • +name: String - 公有字符串 name
  • #createdAt: Date - 受保护的日期字段
  • ~cache: Map<String, Any> - 包内私有缓存

操作

操作表示类的行为/方法。

添加操作

  1. 选中该类
  2. 在 UML 部分找到 操作 ——一个多行编辑器,每行一个操作
  3. 点击 +(或按 Shift+Cmd+L)添加新操作,然后输入其详细信息

操作语法

操作遵循以下格式:可见性 名称(参数) : 返回类型

示例:

  • +getName(): String - 返回 String 的公有 getter
  • -validate(input: String): Boolean - 私有验证方法
  • +process(data: Data, options: Options): Result - 带多个参数的方法
  • +save(): void - 无返回值的方法

关系

按 R 激活关系工具,然后从一个类拖动到另一个类以创建连接。

关系类型

类型线条样式箭头使用场景
关联实线空心箭头一般关系
依赖虚线空心箭头"使用"关系
继承实线空心三角形"是一个"关系(扩展)
实现虚线空心三角形接口实现
聚合实线空心菱形"拥有一个"(弱所有权)
组合实线实心菱形"拥有一个"(强所有权)

创建关系

  1. 按 R 激活关系工具
  2. 点击源类
  3. 拖动到目标类
  4. 释放以创建连接
  5. 使用检查器的 UML 部分设置 关系类型 ——线条样式和箭头会随类型变化

关系标签

选中一个关系,在检查器的 UML 部分设置它的标签:

  • 标签 - 描述该关系(例如"管理"、"包含")
  • 多重性 - 源 和 目标 的值,表示实例数量(例如 "1"、"0.."、"1..")

最佳实践

  1. 保持简单 - 不要试图为所有内容建模;专注于关键类
  2. 使用构造型 - 清晰标注接口和抽象类
  3. 展示关键关系 - 不是每个关联都需要展示出来
  4. 命名一致 - 类使用 PascalCase,成员使用 camelCase
  5. 对相关类进行分组 - 使用视觉上的邻近性来展示逻辑分组