我是Kotlin的新手,我不明白是否/如何调用函数或从伴随对象设置变量:
class MyClass {
public var myVar: Boolean
public fun myFunc(): Int { ... }
companion object {
private fun doStuff(){
myVar = true
myFunc(1)
}
}
}
我在 myVar = true
和 myFunc(1)
上得到unresolvedReference .
1 回答
Companion对象是一个与
MyClass
的任何特定实例无关的对象,因此它无法在不指定实例的情况下访问实例属性myVar
和实例函数myFunc
. 它只是不知道它应该访问哪个实例 .如果你真的想从伴侣对象中的函数那样做,你应该传递一个
MyClass
的实例: