Назад к вопросам
Junior — Middle
74
Какие альтернативные конструкции или ключевые слова, выполняющие функцию static в Java, использует Kotlin?
Компании, где спрашивали
АВ Софт
Ответ от нейросети
sobes.tech AI
В Kotlin нет ключевого слова static, как в Java. Вместо этого используются следующие конструкции для создания членов, похожих на статические:
- companion object — объект-компаньон внутри класса, члены которого можно вызывать без создания экземпляра класса. По сути, это аналог статических методов и полей.
class MyClass {
companion object {
const val CONSTANT = 42
fun staticLikeMethod() = println("Hello from companion object")
}
}
fun main() {
println(MyClass.CONSTANT)
MyClass.staticLikeMethod()
}
-
top-level функции и свойства — функции и переменные, объявленные вне класса, доступны напрямую по имени файла или через импорт, что часто заменяет статические методы.
-
object declaration — объявление объекта (синглтона), который может содержать функции и свойства, доступные глобально.
Таким образом, companion object — основной способ эмулировать static в Kotlin.