3

我有一个抽象父类Server和 3 个子类InternalServerExternalServer并且LoggableInternalServer. Server有公共抽象方法receiveClient()

该应用程序有一个列表,Server其中包含上述三种类型的许多对象。该列表被迭代,并且receiveClient()在每次迭代中调用该方法。的实现receiveClient()因子类而异。

有没有办法使用序列图来表示这种多态行为?如果不是,我可以用什么其他图表来记录这种行为?

4

2 回答 2

5

有一种方法可以使用序列图来表示这种多态行为。多态调用由保护条件控制的多个场景建模。因此,对于每个多态场景,动态绑定(多态调用)都表示为一个“场景框”。因此,这是一个显示您的问题的多态调用的单一图表。

在此处输入图像描述

所以,即使这个模型回答了你的问题,它也不是一个明确的解决方案,因为在序列图中表示多态性并非易事。最后,类似的讨论是关于如何在单个图中可视化多态调用的问题?.

于 2014-08-05T04:00:49.947 回答
2

您可以在对象创建点启动生命线,显示来自创建分类器实例的发送者的消息。您可以将其与 ALT 片段混合以显示不同的实现。

于 2013-04-14T20:18:26.003 回答