最近评论
正在载入评论列表...
![]() |
![]() |
交互图为一组相互协作以实现某个用户目标的对象的行为建模。有两种类型的交互图:顺序图和协作图。两种方法都常被用于为场景中包含的一组协作对象建模。顺序图最适合于为协作对象所执行的动作序列建模,而协作图在为协作对象之间的结构关系建模方面非常有用。实际上,顺序图和协作图在语义上是相等的。因此,这里将只讨论顺序图的实现,因为这里所讨论的技术也同样适用于协作图。
在顺序图中,协作对象彼此之间通过消息通信。消息是对某个方法的一次调用或者是从发信对象发送到目标对象的真实消息。当对象接收到一条消息之后,它会再向其他对象发送一条或者多条消息。
可以通过使用以下技术将顺序图转换成代码。
● 将消息转换成适当的方法调用。例如,创建消息将被转换成对目标对象类的构造器的一次调用,在Java中就是new语句;
● 在目标对象的类中实现方法,用来处理输入消息(如图5-47所示);
● 将条件分支映射到添加语句,如if-then-else语句;
● 使用线程实现主动对象;
● 使用并发线程映射并发分支。

图5-47 将顺序图中的消息映射到具体实现