Sobes.tech
Назад к вопросам
Junior — Middle
75

Можете объяснить, что такое объект-компаньон в Kotlin и в чем его предназначение?

Компании, где спрашивали
Т-БанкТ-Банк

Ответ от нейросети

sobes.tech AI

Объект-компаньон (companion object) в Kotlin — это специальный объект, объявленный внутри класса с ключевым словом companion. Он позволяет создавать члены класса, которые ведут себя как статические (static) в других языках, но при этом остаются объектами.

Назначение:

  • Хранить фабричные методы (например, create()), константы и утилитарные функции, связанные с классом.
  • Обеспечивать доступ к членам без создания экземпляра класса.

Пример:

class MyClass {
    companion object {
        const val CONSTANT = "value"
        fun create(): MyClass = MyClass()
    }
}

fun main() {
    val instance = MyClass.create()
    println(MyClass.CONSTANT)
}

Таким образом, объект-компаньон объединяет преимущества статических членов и объектно-ориентированного подхода.