如何绘制2个对象之间的“列表”关系?
问题描述:
我正在绘制一个模式来表示我的对象之间的关系......例如,以下模式显示对象A
是一对对象B
和对象C
。如何绘制2个对象之间的“列表”关系?
现在,我要代表一个对象D
,这是A
名单,我只是不知道如何画A
和D
之间的箭头...
谁能帮助?
答
既然是1至N的关系,从写一个d线到A中进行聚合或组合符号(打开/闭合菱形符号)。
如果需要列表中至少有一个元素,请在A端*(表示0..n)或1..n写入。
查看http://www.ibm.com/developerworks/rational/library/content/RationalEdge/nov03/t_modelinguml_db.pdf举一个例子,在文档的中途搜索Flight和Plane类图。
答
其实你的模型是不正确的。如果您说A
是一对B
和C
,则聚合应该从A
开始,并在B
和C
处结束。您展示的图形说B
包含A
和C
包含A
。 至于显示多样性,将[0..*]
添加到更接近具有多个实例的类。如果D
的列表为A
,请添加一个从D
到A
的聚合/组合链接,并设置如上所述的多重性。但请注意,这并未指定D
包含A
的列表,只有D
包含许多(0个或更多)A
的实例。如果要指定将引用实施为列表,则可以在链接顶部添加{list}
约束,或者不要使用该链接并使用alist:A[0..*] {list}
向D
添加属性。
查看this网站了解更多信息