3

我必须建模一个系统,其中类的对象Person将调用类getBook(...) : Book上的静态方法,该方法Book将返回特定书籍的实例。

怎么引用操作得到的书本实例?

到目前为止,我可以想到两种方法,我从未见过/使用过这两种方法,这就是我寻找正确方法的原因。

第一种方法是直接在获得的 book 实例上调用方法,例如,如果返回的引用getBook(...) : Book是 named matchingBook,我会使用matchingBook.doSomething(...),就像拥有一个局部变量一样。

第二种方法,我在序列图中发现的更多,是让操作返回的 book 实例与其自己的生命线一起出现,例如在 Book 类旁边,并用标记为 的箭头引用它doSomething(...)

但是,对于第二种方法,这个对象实际上是操作返回的对象并不那么明显。

4

2 回答 2

3

第二种方法是正确的。为了表明您指向的是返回的对象 ( matchingBook),您可以将变量名称添加到生命线的标题中,如下所示:

在此处输入图像描述

于 2013-04-24T14:30:10.510 回答
2

第二种方法是正确的。每当您对第一个操作返回的对象调用操作时,最好的办法就是在第一个调用的结果和生命线之间进行名称匹配。

无论如何,我真的不明白你对第一种方式的期望:你会放在matchingBook.doSomething(...)哪里?在指向哪条生命线的箭头上?

于 2013-04-23T20:24:11.483 回答