UML 构建模块详解:事物、关系与图分别表示什么

Luna
Luna
发布时间:2026-08-24 | 202人浏览过
原创
UML 常见图类型的分组信息图,区分静态结构图与动态行为图的适用范围
常见 UML 图及适用场景UML 图种类不少,但先按“静态结构”和“动态过程”来分,会更容易建立整体认识。
UML 四种关系的对比图,展示依赖、协作、泛化和实现的含义与区别
UML 常见关系一图看懂关系决定 UML 元素如何相连,这张图适合快速区分四种常见关系表达的语义重点。
UML 中四类事物的分类结构图,突出结构事物、行为事物、分组事物和注释事物的作用差异
UML 事物的四类划分用一张分类图先看懂 UML 中“事物”这一核心构建块,以及四类事物分别负责表达什么。

前言

在学习 UML 时,很多人会先接触到各种图,却没先弄清这些图背后的基本构成。本文从“事物、关系、图”三个层面重新梳理 UML 构建模块,把容易混淆的结构、行为、包、注释以及四种常见关系拆开说明,帮助你建立一套更清晰的建模理解框架。

在学习 UML 概念模型时,通常需要先把三大要素分清:UML 构建模块、规则连接构建模块、UML 的公共机制。本文聚焦第一部分,把 UML 构建模块拆成“事物、关系、图”三条主线来讲,并补齐各自的典型类型与作用。读完后,你不仅能知道这些名词分别指什么,也能判断它们在建模时各自负责表达哪一层信息。

UML 构建模块由哪三部分组成

UML 构建模块可以概括为三类:

  • 事物
  • 关系
  • 图

可以把它理解为:先有建模时要表达的对象和行为,也就是“事物”;再用“关系”说明它们之间如何关联;最后通过“图”把这些内容组织成可读的模型表达。

事物:UML 中真正被表达的内容

事物是实体抽象化的最终结果,也是 UML 构建块里最核心的一部分。按照作用不同,事物可以分为四类:

  • 结构事物
  • 行为事物
  • 分组事物
  • 注释事物

结构事物:描述模型中的静态部分

结构事物用来呈现概念或实体本身,是软件建模中最常见的一类元素。它们主要回答“系统里有什么”。

  • 类(class):具有相同属性、方法、关系和语义的对象集合。
  • 接口(interface):类或组件对外提供的服务(操作),描述对外可见的动作。
  • 协作(collaboration):定义元素之间的相互作用。
  • 用例(use case):定义执行者与系统之间为实现某个业务目标而发生的交互。
  • 组件(component):描述物理系统的一部分。
  • 节点(node):在运行时存在的物理元素。

如果把 UML 看成一张系统地图,那么类、接口、组件、节点等结构事物,就是地图上那些可以被明确标识出来的“实体”。

行为事物:描述模型中的动态部分

行为事物对应 UML 模型中会随时间变化的内容,更接近“系统在做什么”。它代表语义里的“动词”,主要包括两类:

  • 交互:一种行为,表现为一组元素之间通过消息交换来完成特定任务。
  • 状态机:由一系列对象状态组成,用来描述对象生命周期中的状态变化。

这部分通常用于说明对象之间如何协作,以及对象在不同事件触发下如何切换状态。

分组事物:用包组织模型内容

分组事物可以理解为 UML 里的“盒子”,用于组织模型内容。目前它只有一种形式:包(package)。

无论是结构事物、行为事物,还是其他分组内容,都可以被放入同一个包中。它的作用主要是帮助开发阶段梳理模型结构,而不是表示运行时实体。

这里要特别区分两个容易混淆的概念:

  • 包(package):概念层面的组织方式,存在于开发阶段。
  • 组件(component):系统中的物理组成部分,强调运行时或部署层面的存在。

注释事物:为模型补充说明和约束

注释事物用于记录 UML 模型元素的说明、意见和约束。它只有一种形式:注释。

注释本身不改变模型结构,但能帮助读者理解设计意图,尤其适合标明限制条件、补充背景或解释特殊规则。

关系:UML 元素之间如何连接

关系是 UML 的另一组核心构建块,用来说明各类元素之间如何彼此相关。它表达的是“这些元素之间是什么关系”,而不是“元素本身是什么”。UML 中常见的四种关系如下:

依赖关系

依赖是两件事物之间的语义联系,其中一个事物发生变化,可能会影响另一个事物。

这种关系通常比较松散,但在设计时很关键,因为它意味着修改一处可能带来连带影响。

协作关系

这里的协作可以理解为一组对象之间的连接关系,典型情况包括聚合关系,也就是整体与部分之间的结构联系。

它强调的不是继承,而是对象之间如何组成、更如何配合。

泛化关系

泛化描述的是从一般到特殊的关系,本质上就是面向对象中的继承关系。

可以把它理解为:某个更具体的元素,归属于一个更一般的抽象概念之下。

实现关系

实现是类之间的一种语义关系,其中一个类规定契约,另一个类负责保证该契约被执行。

在实际建模中,这种关系常用于接口与实现类之间的表达。

图:把事物和关系组织成可读模型

图是 UML 构建模块的最终输出形式。前面的“事物”提供内容,“关系”提供连接方式,而“图”则把它们组织成完整的系统表达。

不同类型的图,侧重点并不相同。UML 中常见的图包括:

  • 类图:描述系统包含哪些类、类的内部结构以及类之间的关系。
  • 对象图:类图的一个具体实例。
  • 用例图:从用户视角描述系统功能与需求,展示角色和用例之间的关系。
  • 顺序图:表示对象之间动态协作的先后顺序。
  • 协作图:描述对象之间的协作关系。
  • 活动图:描述系统中各种活动的执行顺序。
  • 状态图:描述对象可能出现的状态,以及事件发生时的状态转移条件。
  • 部署关系图:定义系统中软硬件的物理体系结构。
  • 组件图:描述代码部件的物理结构及各部件之间的依赖关系。

可以简单理解为:静态结构更适合用类图、对象图、组件图来表达;动态过程则更常通过顺序图、活动图、状态图来说明。

怎么整体理解 UML 构建模块

如果你刚开始接触 UML,可以按下面这个顺序理解:

  1. 先看事物,明确模型里到底要表达哪些对象、行为和说明。
  2. 再看关系,理解这些元素之间是依赖、协作、泛化还是实现。
  3. 最后看图,判断应该用哪一种图把信息组织出来。

这样学习 UML 会更顺:不是先死记图形符号,而是先弄清每个构建块在模型中承担什么职责。

小结

UML 构建模块的核心可以归纳为三点:事物负责表达内容,关系负责连接内容,图负责呈现内容。事物又可细分为结构事物、行为事物、分组事物和注释事物;关系常见为依赖、协作、泛化和实现;图则用于把这些元素整合成可读的系统模型。

后续继续学习 UML 各类图时,这套“先元素、后关系、再成图”的框架会更容易帮助你建立整体认识。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表