В Котлине нет понятия static
.Однако вы можете добиться того же, используя сопутствующие объекты .Проверьте Kotlin выражение объекта и объявление для получения более подробного объяснения.
Поскольку в вашем примере вы просто хотите создать Singleton, вы можете сделать:
class ThisForThatApplication: Application() {
companion object {
val instance = ThisForThatApplication()
}
}
Однако каквы создаете класс Android Application , с точки зрения Android было бы лучше инициализировать экземпляр в методе onCreate () :
class ThisForThatApplication : Application() {
companion object {
lateinit var instance: ThisForThatApplication
private set
}
override fun onCreate() {
super.onCreate()
ThisForThatApplication.instance = this
}
}
private set
внижняя часть объекта-компаньона позволяет только классу ThisForThatApplication устанавливать значение.