Junior — Middle
Hogyan lehet osztálytulajdonságot deklarálni Kotlinban, hogy statikus legyen?
sobes.tech MI
Válasz az MI-től
Kotlinben nincs közvetlen megfelelője a Java statikus tulajdonságainak. Egy olyan tulajdonság deklarálásához, amely minden példányra közös (statikus), használjuk a companion object-et.
Példa:
class MyClass {
companion object {
var staticProperty: String = "Közös tulajdonság"
}
}
fun main() {
println(MyClass.staticProperty) // Hozzáférés a tulajdonsághoz példány létrehozása nélkül
MyClass.staticProperty = "Új érték"
println(MyClass.staticProperty)
}
A companion object-ben lévő tulajdonságok és metódusok a osztály névvel elérhetők, ami utánozza a statikus tagok viselkedését.