Sobes.tech
Junior — Middle

Ako deklarovať vlastnosť triedy v Kotlinu, aby bola statická?

sobes.tech AI

Odpoveď od AI

V Kotlinu neexistuje priama ekvivalent statickým vlastnostiam ako v Jave. Na deklaráciu vlastnosti, ktorá bude spoločná pre všetky inštancie triedy (statická), sa používa companion object.

Príklad:

class MyClass {
    companion object {
        var staticProperty: String = "Spoločná vlastnosť"
    }
}

fun main() {
    println(MyClass.staticProperty) // Prístup k vlastnosti bez vytvorenia inštancie
    MyClass.staticProperty = "Nová hodnota"
    println(MyClass.staticProperty)
}

Vlastnosti a metódy vnútri companion object sú dostupné cez názov triedy, čo napodobňuje správanie statických členov.