Какую альтернативу Inner static Class я могу использовать на языке Kotlin, если она существует? Если нет, как я могу решить эту проблему, если мне нужно использовать static class в Kotlin? См. Пример кода ниже:
inner class GeoTask : AsyncTask<Util, Util, Unit>() {
override fun doInBackground(vararg p0: Util?) {
LocationUtil(this@DisplayMembers).startLocationUpdates()
}
}
Я много искал, ничего не нашел, заранее большое спасибо.
в этом коде в моем вопросе проблема (утечка памяти) возникает из-за того, что я использую asyncTask, содержащий (контекст) активности, студия Android советует мне использовать (внутренний статический класс)




Просто опустите inner в Котлине.
Внутренний класс (содержащий ссылку на внешний объект)
Ява:
class A {
class B {
...
}
}
Котлин:
class A {
inner class B {
...
}
}
Статический внутренний класс, также известный как вложенный класс (без ссылки на внешний объект)
Ява:
class A {
static class B {
...
}
}
Котлин:
class A {
class B {
...
}
}
Вы также можете изменить «класс» на «объект».
class OuterA {
object InnerB {
... }
}
ИЛИ ЖЕ
object OuterA {
object InnerB {
... }
}
На что вам альтернативный для? Что не работает?