【问题标题】:UML abstractionUML 抽象
【发布时间】:2011-03-30 21:10:27
【问题描述】:

我有一个摘要class1,其中有摘要method1()Class2 实现 class2 并覆盖 method1()Class3 扩展 class2 并覆盖 method1()

根据UML,图像中的两种解决方案中哪一种是正确的?

【问题讨论】:

    标签: oop uml


    【解决方案1】:

    两者都不正确 - 尽管解决方案 1 比解决方案 2 更不正确。首先,您需要对一些句法内容进行排序:

    1. 您的图表将类之间的关系显示为二进制关联。它们不是——它们是亚型关系。那些有不同的图形语法。
    2. 抽象项目(类/方法)应以斜体显示。

    您还需要对 2 个语义事物进行排序;一些提示:

    1. 一个类不能实现另一个类。一个类可以实现一个接口或扩展(子类型)另一个类。
    2. 您需要正确绘制类之间的关系。大提示:这是解决方案 2 比解决方案 1 更正确的地方。您需要找出原因。

    第一次。

    【讨论】:

    • 是的 class1 和 class2 是抽象类。所以 class2 是实现 class1 和 class3 扩展 class2 所以 class3 与 class1 没有直接关系吗?这就是为什么第二种解决方案更正确
    • 正确。 class3 与 class1 没有直接关系,因此解决方案 2 的原因更正确。不过要小心你的第一句话:由于我上面提到的原因,class2 不能实现 class1。最后,假设这是作业:请这样标记。在这方面诚实会带来回报。
    猜你喜欢
    • 1970-01-01
    • 2012-11-06
    • 1970-01-01
    • 2021-12-17
    • 2015-02-23
    • 2018-09-09
    • 1970-01-01
    • 2021-12-02
    • 2021-04-09
    相关资源
    最近更新 更多