urlname
type
Post
password
SyncToConfluence
category
学习笔记
date
Oct 24, 2025
slug
f6b4c512-5138-4ee4-a383-e23120a68f12
icon
Button
catalog
summary
tags
UML
软件工程
学习笔记
专业能力
编程基础
cover
Status
BusyTime
Status 1
status
Published
UML类图的作用与意义
定义
UML 类图(Class Diagram) 描述系统中各个“类(Class)”之间的静态结构关系。
它回答的问题是:
“系统有哪些类?类之间是怎么联系的?”
在 Java 项目中,你可以把 UML 类图理解为:
代码结构的蓝图(Blueprint)
类的基本组成
一个类在 UML 中通常包含 3 个部分:
区域 | 内容 | Java 对应 |
顶部 | 类名 | class 名称 |
中部 | 属性(Attributes) | 成员变量 |
底部 | 操作(Operations) | 成员方法 |
🧩 示例:一个简单的 Java 类
对应的 UML(Mermaid语法):
📘 说明:
+公有 (public)
-私有 (private)
#受保护 (protected)
~包可见 (default)
类与类之间的关系
UML 类图的核心就是——关系。
我们重点掌握 5 种常见关系(按强度由弱到强排列):
类型 | 含义 | UML符号 | Java对应示例 |
依赖(Dependency) | A 使用了 B | 虚线箭头 → | 方法参数、局部变量 |
关联(Association) | A 拥有 B 引用 | 实线箭头 → | 成员变量 |
聚合(Aggregation) | A 包含 B(弱关系) | 空心菱形 → | “整体–部分”但可独立存在 |
组合(Composition) | A 包含 B(强关系) | 实心菱形 → | “整体–部分”生命周期绑定 |
泛化(Generalization) | A 继承 B | 空心三角箭头 ↑ | 继承关系 extends |
1️⃣ 依赖(Dependency)
OrderService 依赖 Product。依赖是一种临时使用关系。
2️⃣ 关联(Association)
客户有一个地址对象(成员变量)。
3️⃣ 聚合(Aggregation)
部门“聚合”多个员工,但员工可以独立存在。
4️⃣ 组合(Composition)
房子包含房间,房子消失 → 房间也消失。
5️⃣ 泛化(Generalization / Inheritance)
接口与实现
实际应用:购物系统简化模型
📘 对应逻辑:
- Customer 下单 →
places
- 一个 Order 拥有多个 OrderItem(组合)
- OrderItem 引用 Product(关联)
实战技巧与总结
目的 | UML关系 | Java层面体现 |
临时使用对象 | 依赖 | 方法参数 |
持有引用 | 关联 | 成员变量 |
部分独立存在 | 聚合 | List<Employee> |
部分生命周期绑定 | 组合 | new 出来的成员 |
抽象/继承 | 泛化 | extends / implements |
- Author:CoderWdd
- URL:https://www.wuinsights.top//article/f6b4c512-5138-4ee4-a383-e23120a68f12
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!
Relate Posts