質問は自明ですが、例を挙げさせてください:
私は次のものを持っています:
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 public static メソッドを配置する場所を提供することだったというものです。