Sobes.tech
Junior — Middle

Каква е целта на обекта companion в езика Kotlin?

sobes.tech AI

Отговор от 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 не съществуват, и позволява удобно групиране на свързани с класа функции и данни.