Sobes.tech
Junior — Middle

Sinifin yaradılan bütün nümunələri üçün ümumi olan yoldaş obyektdirmi?

sobes.tech Süni İntellekt

AI-dan cavab

Bəli, Kotlin-də companion object (yoldaş obyekt) sinfin bütün nümunələri üçün ümumidir. Bu, sinfə bağlı olan və müəyyən bir nümunəyə aid olmayan bir singleton növüdür.

Companion object, sinif nümunəsi yaratmadan çağırıla bilən funksiyalar və xüsusiyyətlər təyin etməyə imkan verir; bu, Java-dakı statik metodlar və sahələrə bənzəyir.

Nümunə:

class MyClass {
    companion object {
        val sharedValue = 42
        fun printValue() {
            println("Paylaşılan dəyər: $sharedValue")
        }
    }
}

fun main() {
    println(MyClass.sharedValue) // 42
    MyClass.printValue()        // Paylaşılan dəyər: 42
}

Burada, sharedValueprintValue bütün MyClass nümunələri üçün ümumidir.