Derived类是否需要钻石链接?

时间:2010-07-16 17:09:57

标签: inheritance uml composition aggregation diagrams

例如,如果我有以下要求:     狗是一种动物     2.动物园有动物     我是否还需要第二个金刚石连接器(下面一个),如下所示: diagram image

4 个答案:

答案 0 :(得分:0)

第二个钻石连接器是多余的。以下是关于UML类图样式的一些建议:http://www.agilemodeling.com/style/classDiagram.htm

答案 1 :(得分:0)

第二颗钻石连接器表明除动物外,动物园还特别配备了狗。

答案 2 :(得分:0)

你在解决UML之前使用你的常识:)

你想模拟动物园里有不同物种的动物吗?那么你不仅应该把狗和猫以及所有其他动物类放在这种动物园类型(类)中,并且只使用一个钻石连接器。

答案 3 :(得分:0)

  1. 请勿使用白色金刚石连接器。使用“组合”或“关联”。在您的情况下,使用“关联”。 “UML简化”的作者有以下comments

  2. 第二次聚合不是必需的。但是,您可以通过以下方式更改模型:

    (1)设置第一个聚合的目标角色(在Animal侧)“animals”。

    (2)删除第二个聚合。

    (3)创建另一个类DogZoo,从Zoo中推广。

    (4)从DogZoo到Dog绘制一个聚合体,目标角色是“狗{重新定义动物}”

  3. 希望有所帮助。