子类由其超类的各种元素组成

subclass consists of various elements of its superclass

我目前正在尝试为我正在开发的一个简单应用程序设计一个 uml class 图表。 问题:我有一个 class,它是同一个 superclass 的一个 subclass 和另一个 subclass。第一个,让我们称之为 subclass1 由超级 class 的各种元素组成,即它本身和另一个 subclass2.

现在我不确定如何在 UML 中正确建模。以下两张图片显示了我想到的两种可能性。两者似乎都不正确。

选项 1:subclass1 是它的超级集合class。

选项 2:subclass2 包含超级class 个元素的列表

我的问题:其中之一是否正确,如果不正确,我将如何正确建模?

基本上两个图是一样的。您首先要在打算表达多样性的地方使用共享聚合。这是不正确的。共享聚合具有在域上下文中定义的开放语义。

上图是首选方式。它使用具有多重性和角色名称的关联。这在语义上与您的第二张图片相同。

N.B。我使用大写字母作为 class 名称,因为这是一种常见的约定。