Назад к вопросам
Junior — Middle
70
В чем предназначение объекта companion в языке Kotlin?
Ответ от нейросети
sobes.tech AI
В Kotlin объект companion используется для объявления компаньон-объекта внутри класса. Это позволяет создавать статические члены (методы и свойства), которые принадлежат классу, а не конкретному экземпляру.
Компаньон-объект ведёт себя как синглтон, связанный с классом, и его члены можно вызывать через имя класса без создания объекта.
Пример:
class MyClass {
companion object {
fun create(): MyClass = MyClass()
const val CONSTANT = 42
}
}
fun main() {
val instance = MyClass.create() // вызов компаньон-метода
println(MyClass.CONSTANT) // доступ к компаньон-константе
}
Таким образом, companion object заменяет статические члены, которых нет в Kotlin, и позволяет удобно группировать связанные с классом функции и данные.