这个问题是不言自明的,但请允许我提供一个例子:
我有以下内容:
class Foo {
def doAndPrint {
val result = doSomething()
val msg = message(result)
println(msg)
}
private def message(result: Result): String = {
"message formatted with %s".format(result)
}
}
在这种情况下,问题是:应该def message(result: Result)
住在object Foo
?
赞成的论点是明确表示def message(result: Result)
不依赖于class Foo
. 反对的论点是伴随对象的动机是提供一个放置java公共静态方法的地方。