【问题标题】:Proper UML modelling for inheritance from an abstract class从抽象类继承的正确 UML 建模
【发布时间】:2021-12-02 21:34:54
【问题描述】:

以下实现的正确模型是哪一个。

class Habitat {
    int id;
    String name;
}

abstract class Animal {
    int id;
    String name;
    Habitat habitat;
}

class Fish extends Animal {
    // Fish Attributes
}

【问题讨论】:

  • 无。没有鱼。
  • 对不起,我的错误。现在这里有一个

标签: inheritance uml abstract-class


【解决方案1】:

从实现的角度来看,两者都是正确的。然而,由于Habitat 被定义为Animal 的属性,左上角将是正确的模型。右下角将显示继承的关联而不是一般关联。这将是模型的一些特殊视图。图表始终是模型的特定视图,并且(几乎)永远不是模型的全貌。

您应该将角色名称放在关联中,并使用点表示法使其成为拥有的属性,而不是使用命名属性。

导航只是多余的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-02
    • 2010-10-10
    • 2014-08-12
    • 1970-01-01
    相关资源
    最近更新 更多