活动对象中的操作的并发性属性指定当另一个活动对象调用操作时系统将具有的行为。
| 并发性值 | 描述 |
|---|---|
| 顺序 | 此值是一项操作的并发性属性的缺省值。并发流程之间可能会发生冲突。调用对象之间应该互相协调,以便对于某项操作一次只有一个调用。 |
| 受保护 | 可以同时对一项操作执行多个调用,但是只允许继续执行其中一个调用。后续调用将被阻塞,直到完成第一个调用为止。系统设计人员应该确保应用程序可以同时阻塞对操作执行的所有调用。 |
| 并发 | 可以同时对一项操作执行多个调用并且同时继续执行。 |
多重性属性适用于多个模型元素,而且尤其适用于属于类元和组合结构图部件的属性以及类元之间的关联。属性的多重性告诉您可以与模型元素相关联的值数。例如,可以定义一个称为 Attribute1 的属性,其数据类型为 Integer,整数值的范围是 0 到 3,即,Attribute1 : Integer [0..3]。关联关系端的多重性值或范围值表示可以参与关系的对象数。多重性规范可以是单个正整数,也可以是由下限和上限指定的一定范围内的正整数,或者是用逗号分隔的一些正整数组成的列表。星号(*)表示无限制的上限。例如,下表显示了多个多重性规范:
| 示例 | 描述 |
|---|---|
| 1 | 刚好为 1 |
| 0..1 | 0 或 1 |
| * | 任意数(包括 0) |
| n | 任意数(包括 0) |
| 1..* | 一个或多个 |
在具有参数的上下文(例如,模板)中,多重性规范的上限和下限可以是求值为整数值的表达式。
如下图所示,当多重性值与某个属性相关联时,将用方括号将它们括起来:
![]()
如下图所示,当多重性值与组合结构图中的部件相关联时,也将用方括号将它们括起来:
![]()
如下图所示,当多重性值与关联关系端相关联时,它们显示在将它们应用于的关联关系端:

可以指定属性、操作、参数和关联关系端的类型。所指定的类型可以是一个类、一种 UML 数据类型(例如,Integer、String、无限制的自然数或 Boolean),也可以是一个接口。
例如,其他类可以看见并使用具有“公有”可视性的类中的属性和操作。如果属性和操作具有“私有”可视性,那么只有包含它们的类才能看见和使用这些属性和操作。
| 级别 | 属性图标 | 操作图标 | 文本符号 | 描述 |
|---|---|---|---|---|
| 公有 | + | 可以看见容器的模型元素也就可以看见并使用公有模型元素。 | ||
| 私有 | - | 位于同一容器中的模型元素可以看见并使用该容器中的私有模型元素。 | ||
| 保护 | # | 位于同一容器或者该容器的后代中的模型元素可以看见并使用该容器中的受保护模型元素。 | ||
| 包 | ~ | 与容器位于同一个包中的模型元素可以看见并使用具有“包”可视性的模型元素。 |