我正在尝试阅读用于记录设计模式的UML类图。我理解聚合和组合-聚合使用开放的菱形,组合使用填充的菱形。
我在某处读到过,虚线表示实例化-即,如果一个类实例化另一个类,那么从实例化程序到被实例化的使用虚线。首先,组合不会像我认为的那样使用它和隐含所有权吗?
其次,我看到类之间的线不是聚合的,也不是组合的--也就是说,根本没有diamnad。以下是他们记录观察者模式的示例:
http://www.dofactory.com/Patterns/PatternObserver.aspx
它们显示了一条从受试者到观察者的线,没有任何菱形。这是怎么回事?
谢谢
射线
发布于 2011-01-21 14:16:45
UML关联用于传达两个或多个分类器(例如,类)之间的关系。组合和聚合是特定的关联形式。
关联通常用于类关系图中,以指示一个类的实例可以引用另一个类的实例。例如,在您链接到的图表中,ConcreteObserver和ConcreteSubject之间的关联意味着ConcreteObserver实例可以具有对ConcreteSubject实例的引用(请注意关联的方向性)。
发布于 2011-01-21 18:11:37
虚线表示依赖关系。有许多不同类型的依赖,其中之一就是实例化。如前所述,关联是描述具有另一个类的属性的类之间关系的一种方式。当涉及到类图中的类之间的关系时,最好从最具体的开始,然后到更一般的。因此,从组合、聚合、关联和依赖开始。
https://stackoverflow.com/questions/4751792
复制相似问题