синглтон - init не вызывается - PullRequest
0 голосов
/ 13 февраля 2019

Я хочу создать синглтон в Kotlin, поэтому я создал объект-компаньон следующим образом:

companion object { 
    val INSTANCE = MessagesManager()
}

Я хочу кое-что сделать в его конструкторе, поэтому я написал некоторый код в функции init, но этоникогда не работает, если я не использую Синглтон.Я также пытался использовать аннотацию JVMField, но она не работает.Я хочу, чтобы запуск init запускался сразу после запуска.

1 Ответ

0 голосов
/ 14 февраля 2019

init{} блок будет вызываться при загрузке класса.

Итак, вы должны получить доступ к этому классу хотя бы один раз после запуска.

И, есть более удобный способ сделатьСинглтон в Котлине, как показано ниже.

object MessageManager {}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...