【问题标题】:UML: Self-defined data types as attributes in classes / when adding an attribute to a class is allowedUML:自定义数据类型作为类中的属性/当向类添加属性时是允许的
【发布时间】:2016-04-16 02:58:04
【问题描述】:

有人提出了类似的问题,但这并不能完全解决我的问题:

我对老师的以下陈述有疑问:

  1. “您只能将内置或自定义的数据类型作为类中的属性类型。对于其他属性,多重性定义了数量以及它是否是强制性的。” (很公平)

假设如下描述:

[...]每个操作都包含一系列要在所需质量级别上执行的任务 - 对于每个任务,都有一个从该任务的可用质量级别列表中选择的关联质量级别。[...] (操作也包含许多其他属性)。

现在我已经绘制了以下“类图”:

问题:

  1. 我可以将自定义数据类型作为类图的一部分(作为一个类),还是只能用作其他类中的属性?

  2. 如果这些数据类型只能用作属性,那么我不知道如何通过将此属性添加到一个类来标记集合是有序且唯一的事实 - 根据我的老师- 不允许 - 因为那样我将拥有一个既不是内置类型也不是自定义类型的类型的集合作为属性。

  3. 据我所知,将属性添加到类并指定此集合是有序的,这是标记此类属性的唯一方法,不能通过多重性来实现。

有人能解释一下什么是正确的符号吗?

【问题讨论】:

    标签: uml relationship custom-data-type multiplicity


    【解决方案1】:
    1. 您可以根据需要在图表上添加任意数量的自定义 Datatype,但请注意:DatatypeClass 之间存在差异

    2. UML 允许同时使用ClassesDatatypes 作为Attribute 的类型。

    3. 在 UML 中,AttributesAssociations 通常可以互换。两者的定义特征都在Property 中定义,其中包括多重性和其他约束,例如{ordered}

    但是,您的老师也可能会参考一些最佳实践。将属性用于与Datatypes 的关系以及将关联用于与Classes 的关系是非常明智的。有关这方面的更多信息,请参阅UML Best Practice: Attribute or Association

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-13
      • 1970-01-01
      • 1970-01-01
      • 2011-01-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多