是否可以在 Kotlin 类中companion object
的块之前初始化一个?init
如果是这样,怎么做?如果没有,有没有办法完成同样的事情。
我有以下情况,
class A(val iname: String) {
init {
foo.add(this)
}
companion object B {
@JvmField val STATIC = A("hi")
@JvmField val foo = mutableListOf<A>()
}
fun printAllStatics() {
for (a in foo) {
print(a.iname)
}
}
}
并且调用printAllStatics
会导致空指针异常。