Сопутствующий объект - это объект, который не связан с каким-либо конкретным экземпляром из MyClass
, поэтому он не может получить доступ к экземпляру свойству myVar
и экземпляру function myFunc
без указания экземпляра. Он просто не знает, к какому экземпляру он должен получить доступ.
Если вы действительно хотите сделать это с помощью функции в объекте-компаньоне, вам следует также передать ему экземпляр MyClass
:
companion object {
private fun doStuff(instance: MyClass){
instance.myVar = true
instance.myFunc(1)
}
}