您如何在序列图中表示 super() 调用?我创建了一个类“Bar”,它是“Foo”的子类。在创建此类 Bar 时,会调用 Foo 的默认构造函数。你如何在序列图中绘制它?
问问题
1713 次
1 回答
0
超调用表示对超类的某些方法的调用,因此如果类 A 从类 B 扩展,则:
class A extends B{
public A (){
super();
}
}
和
class B {
public B (){
...
}
}
您必须在运行时考虑这些类,例如,您有一个来自类 A 的对象 a,称为 a,该对象由两个类表示,因为 A 类扩展了 B 类。
在这种情况下,我会用超类 B 的构造函数做一个图,所以我可以将此图链接到我代表类 A 的构造函数的图。
由于对超类构造函数的调用引用的是同一个对象而不是另一个对象,因此消息箭头应该是一条自身消息,其中它调用了超类 B 的构造函数。
此外,为了让事情更清楚,我会添加超级调用的代码。
更图形化的应该是这个。
对于 B 类
PD。我使用 Enterprise Architect 软件来绘制图表。
于 2013-10-17T19:07:15.167 回答