【发布时间】:2021-12-31 17:42:35
【问题描述】:
0..* 和 * 在 UML 类图中表示多重性有什么区别吗?我在网上找不到关于多重符号的综合指南。对我来说,他们似乎在概念上都在说同样的话。
【问题讨论】:
标签: class uml associations class-diagram multiplicity
0..* 和 * 在 UML 类图中表示多重性有什么区别吗?我在网上找不到关于多重符号的综合指南。对我来说,他们似乎在概念上都在说同样的话。
【问题讨论】:
标签: class uml associations class-diagram multiplicity
虽然戴夫的回答是正确的,但我想补充一点,这不仅仅是个人意见的问题。 UML 规范明确说明了这个符号快捷方式:
UML 2.5.1, p.35:如果下限等于上限,则另一种表示法是使用仅包含上限的字符串。例如,“1”在语义上等同于“1..1”多重性。以零为下限和未指定上限的多重性可以使用包含单个星号“*”的替代表示法,而不是“0..*”多重性。
【讨论】:
没有任何区别,或者至少我从未听说过有人以不同的方式使用它们。
对我来说,0..* 更明确地说,它明确表示 0 是预期的情况。在另一种情况下,你可以写 1..* 来表明 0 是不允许的。
一般来说,我会选择一种风格并坚持下去以保持一致性。
【讨论】: