Java 继承和聚合UML

Java 继承和聚合UML,java,c++,inheritance,uml,aggregation,Java,C++,Inheritance,Uml,Aggregation,想知道UML是否合理和可接受 请不要质疑是否需要基于类的名称进行组合或聚合 只需按照UML上显示的方式对待它们 此外,我实际上使用GoodArticle与报纸进行通信,而不是实际编码中的父类文章。但就表示UML而言,我仍然应该将父类(文章)连接到报纸,即使它实际上是一篇好文章 这也可以说是类似于好文章与坏文章的组合。BadArticle是否应该连接到父类文章?然而,我实际上使用GoodArticle来连接编码中的BadArticle 我将按原样阅读您的图表,也就是说,我将解释它。如果我的解释是正

想知道UML是否合理和可接受

请不要质疑是否需要基于类的名称进行组合或聚合

只需按照UML上显示的方式对待它们

此外,我实际上使用GoodArticle与报纸进行通信,而不是实际编码中的父类文章。但就表示UML而言,我仍然应该将父类(文章)连接到报纸,即使它实际上是一篇好文章

这也可以说是类似于好文章与坏文章的组合。BadArticle是否应该连接到父类文章?然而,我实际上使用GoodArticle来连接编码中的BadArticle


我将按原样阅读您的图表,也就是说,我将解释它。如果我的解释是正确的,那么你的模型可能是正确的。这就是UML的全部内容——在建模过程中传输明确的信息

所以

  • 阅读图表:报纸上有文章,有好文章也有坏文章。文章独立存在于报纸上,例如,如果删除报纸实例,其文章将保持“浮动”状态。你说:
我实际上是在用GoodArticle和报纸交流,而不是 实际编码中的父类项目。但是就 表示UML,我仍然应该将父类(文章)连接到 报纸,即使它实际上是一篇好文章

不。若只有好文章和报纸相连,那个么你们应该把它画在这两个类之间。这种类图是代码的蓝图,应该精确地显示代码结构

  • 阅读图表:好文章包含坏文章。这种包含是排他性的,这意味着如果删除了GoodArticle,所有包含的BadArticles都将自动删除
这里你说:

BadArticle是否应该连接到父类文章?然而我 我实际上在编码中使用GoodArticle连接BadArticle

这一次,图表反映了代码,所以没关系,BadArticle不应该连接到Article。如果你这么做了,那就意味着坏文章也可以包含其他坏文章


请注意,属性listOfBadArticle可能是多余的。如果它指的是图表上的组合,您只需将其删除,并将其用作相应组合端的名称。

谢谢您的回答。我不太明白你们最后一段关于Badaarticle列表的内容。这不是多余的,因为这是对一个问题的必要实施。因此,对于这个关系,我更喜欢组合而不是聚合来回答这个问题。此外,虽然我同意GoodArticle应该直接连接到报纸,但我似乎找不到类似案例的图表。