以下模式似乎是慣用的斯卡拉: class Foo() {}
object Foo { def apply() = new Foo() }
val x = Foo()
什麼是慣用的做法的動機是什麼?在哪些情況下我應該不是提供工廠方法,迫使客戶使用val y = new Foo()?伴隨對象的所有案例是否應提供工廠方法?
這裏是代碼和輸出: //A scala class with a private variable and one method
class A {
private var a1 = "Zoom"
def A1(): Unit = {
println("A1 Class")
}
}
//A companion object
object A {
我對kotlin很新穎,我想知道是否有可能,以及如果違反了最佳實踐,從伴隨對象中訪問伴隨對象之外的方法和變量。 例如 class A {
fun doStuff(): Boolean = return true
companion object{
public fun stuffDone(): Boolean = return doStuff()
}