0
時,在這個例子中f
我不能引用類的內部構造函數的參數是懸而未決時bar
對象被聲明:爲什麼定義對象
open class Bar(val b: Int)
class Foo(val f: Int) {
object bar : Bar(f)
// ^
// Unresolved reference: f
}
但是,當我宣佈bar
作爲一個變量,它工作得很好:
open class Bar(val b: Int)
class Foo(val f: Int) {
val bar = Bar(f)
}
因此,我定義對象的方式與定義伴隨對象相同,並根據文檔:「伴隨對象在相應的類加載(解析)時初始化,匹配Java靜態初始化器的語義」,對吧? –
是的,我猜你需要的是伴侶對象。 – Jacob
明白了,謝謝。 –