Назад к вопросам
Junior — Middle
72
Какими способами можно объявить весь класс в Kotlin как статический, чтобы он не требовал создания экземпляра?
Ответ от нейросети
sobes.tech AI
В Kotlin нет ключевого слова static, как в Java, но есть несколько способов объявить члены класса или весь класс так, чтобы не требовалось создавать экземпляр:
- Объект (object) — объявление объекта-синглтона, который инициализируется один раз и доступен по имени:
object MySingleton {
fun doSomething() {
println("Hello from singleton")
}
}
// Использование
MySingleton.doSomething()
- companion object — для объявления статических членов внутри класса:
class MyClass {
companion object {
fun staticMethod() {
println("Static method")
}
}
}
// Вызов
MyClass.staticMethod()
- top-level функции и свойства — можно объявлять функции и переменные вне класса, они будут статическими на уровне файла.
Если нужно, чтобы весь класс был статическим и не требовал создания экземпляра, обычно используют object.