Kotlin 从伴随对象在主类中设置变量和调用方法



我是 Kotlin 的新手,我不明白我是否可以/如何调用函数或从配套对象设置变量:

class MyClass {
public var myVar: Boolean
public fun myFunc(): Int { ... }
companion object {
private fun doStuff(){
myVar = true
myFunc(1)
}        
}   
}

我在myVar = truemyFunc(1)上得到未解决的参考.

Companion 对象是一个与任何特定实例无关的对象MyClass,因此如果不指定实例,它就无法访问实例属性myVar实例函数myFunc。它只是不知道应该访问哪个实例。

如果你真的想从配套对象中的函数来做到这一点,你也应该给它传递一个MyClass的实例:

companion object {
private fun doStuff(instance: MyClass){
instance.myVar = true
instance.myFunc(1)
}        
}   

相关内容

  • 没有找到相关文章

最新更新