0

我想知道如何将以下代码行转换为协作图

Food food = new Food("abc", 123);

我知道我可以Food使用以下符号调用 's 方法:

 MyStaticMethod()
----------------------> --------
                        |      |
                        | Food |
                        |      |
                        --------

相当于

Taste taste = Food.MyStaticMethod();

 MyInstanceMethod()
----------------------> ---------------
                        |             |
                        | food : Food |
                        |             |
                        ---------------

相当于

food.MyInstanceMethod();

但是我如何表示我想在 Food 上调用给定的构造函数?

谢谢

4

2 回答 2

1

在协作图中,更多地关注对象之间的交互消息。它用于显示交互中涉及的对象和关系,以及交互过程中对象之间交换的消息顺序。对象创建/销毁在序列图中描述。

于 2010-05-29T18:50:28.807 回答
0

当要调用静态方法时,一般我们用 来表示类<<metaclass>>。因此,作为第一个显示图的答案,要在 Food 上调用一个名为 MyStaticMethod 的静态方法,我们会这样做:

 MyStaticMethod()
----------------------> ---------------------
                        |   <<metaclass>>   |
                        |        Food       |
                        |                   |
                        ---------------------

另外,人们通常用 . 来表示构造方法create()

于 2010-05-30T20:37:43.827 回答