【问题标题】:Represent generic class inheritance in UML在 UML 中表示泛型类继承
【发布时间】:2013-12-10 06:14:31
【问题描述】:

这是在 UML 类图中表示以下代码的正确方法吗?

代码:

public class CustomerRepository 
    : EntityFrameworkRepository<Customer>, ICustomerRepository 
{ }

UML:

【问题讨论】:

    标签: generics inheritance uml class-diagram


    【解决方案1】:

    编辑:

    发布后发现第一个答案不正确。 UML spec 说(第 7.3.4 节):

    绑定元素与其他元素具有相同的图形符号 那样。 TemplateBinding 显示为带有尾部的虚线箭头 在绑定元素和模板上的箭头和关键字 «绑定»。绑定信息可以显示为逗号分隔 模板参数替换列表

    我尝试在 MagicDraw 中创建一个示例:

    由于某种原因,它不允许我输入绑定子句(虚线箭头上尖括号的内容):它应该是&lt;RepositoryType -&gt; Customer&gt;。此外,RepositoryType 参数不应为字符串类型(再次工具)。

    关键点是:参数绑定是在绑定关系上指定的,而不是在参数化类中。这意味着您可以拥有多个不同类型的绑定。

    hth - 为混乱道歉。

    【讨论】:

    • 问题是当你有两个继承自EntityFrameworkRepository&lt;T&gt;的类,比如CustomerRepositoryOrderRepository,那么你需要有两个独立的EntityFrameworkRepository基类。
    猜你喜欢
    • 1970-01-01
    • 2018-09-27
    • 2015-09-15
    • 2013-09-26
    • 1970-01-01
    • 1970-01-01
    • 2021-10-11
    • 2018-08-01
    相关资源
    最近更新 更多