求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
要资料
 
追随技术信仰

随时听讲座
每天看新闻
 
UML2.5教程
UML2.5 图概述
UML 类和对象图概述
UML 类概述
UML 类
UML 接口
UML 数据类型
UML 属性
UML 操作
UML 多重性
UML 的可见性
UML约束
UML对象
UML关联
UML聚合
UML组合
UML的泛化
UML中的依赖
UML抽象
嵌套分类器
UML类图参考
UML 复合结构图
UML结构分类器
UML封装分类器
UML部件
UML连接器
UML端口
UML协作
UML协作使用
UML协作模板
复合结构的参考
UML 包图
UML包图符号
UML元素导入
UML包导入
UML包合并
UML模型
UML封装图参考
UML 组件图
UML 组件
UML 连接器
UML 部署图
UML 用例图
UML 信息流程图
UML 活动图
UML 状态机图
UML 序列图
UML 通信图
UML 时间图
UML交互概述图
UML配置文件图
UML用例图示例-网上购物
UML用例图示例-网站管理
UML、元元模型和配置文件
 
 
UML多重性和集合
原文作者:Kirill Fakhroutdinov 译者:火龙果Anna
5001 次浏览
16次  

UML中的多重性允许指定一些元素集合的基数(即元素的数量)。

多重性(Multiplicity)元素定义了一些元素的集合,包括多重性以及集合元素的顺序和唯一性的规范。

请注意,[UML 2.4.1规范]没有将多重性与多重性元素分开,将这两者混合使用,并在理解规范时造成一些混淆。

多重性

多重性是某些元素集合的基数(即元素数量)的定义,通过提供非负整数的包含间隔来指定所描述元素的允许实例数。多重性区间有一些下限和(可能是无限的)上限:

multiplicity-range :: = [ lower-bound '..'] upper-bound
lower-bound :: = natural-value-specification
upper-bound :: = natural-value-specification | '*'

下限和上限可以是自然常数或计算为自然(非负数)数的常数表达式。上限也可以指定为星号' * ',表示元素数量不限。上限应该大于或等于下限。

注意, [UML 2.4.1规范] 描述多重性不是很一致。例如,它表示下限必须是非负整数文字,后来 - 它可以由值规范指定,例如(没有影响,常量)表达式。另一个问题是星号作为上限在一个地方意味着零个,另一个地方意味着多个。

多重性的一些典型例子:


多重性
选项 基数

0..0
0 集合必须为空

0..1
  没有实例或只有一个实例
1..1 1 只有一个实例

0..*
* 零个或多个实例

1..*
  至少一个实例
5..5 5
正好5个实例
m..n  
至少M,但不超过N个实例

如果多重性与符号为文本字符串(如类属性)的元素相关联,多重性范围将放在方括号内,作为该文本字符串的一部分。

如果多重性与作为符号出现的元素相关联(例如用例或类),多重性范围将不使用方括号显示。

需要两个或多个Player角色
启动游戏用例。

多重元素

多重性(Multiplicity)元素定义了一些元素集合,包括多重性以及集合元素的顺序和唯一性规范。

多重元素的一些子类是结构特征、运算、参数、pin。

集合属性可以用以下不规范的语法规则来描述:

可以使用以下非规范语法规则来描述集合属性:

collection-type :: = multiplicity-range ['{' collection-options '}']

集合选项指定元素实例化中的值是惟一的还是有序的:

collection-options ::= order-designator [ ',' uniqueness-designator ] | uniqueness-designator [ ',' order-designator ]
order-designator ::= 'ordered' | 'unordered'
uniqueness-designator ::= 'unique' | 'nonunique'


收集类型
选项 基数

Multiset, bag
(多重集,包)
false false

Sequence, array
(序列,数组)
true false
Set(组) false true

Ordered set(有序集)
true true

如果multiplicity元素是多值的并且指定为ordered,则按顺序排序此元素的实例化中的值集合。默认情况下,不会对集合进行排序。

如果多重性元素是多值的,并且指定为唯一的,则该元素实例化中的值集合中的每个值都必须是唯一的。默认情况下,集合中的每个值都是唯一的。

数据源可能有一个记录器,并已订购了池
最小到最大连接数。每个连接都是唯一的(默认情况下)

顾客买的东西不多。 购买是按特定顺序进行的,并且每一个都是唯一的(默认情况下)

 


您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



5001 次浏览
16次
欢迎参加课程:
基于UML和EA进行系统分析设计
基于SysML和EA进行系统设计与建模
领域驱动的建模与设计