Junior — Middle
Akými spôsobmi možno v Kotlin oznámiť celú triedu ako statickú, aby nevyžadovala vytvorenie inštancie?
sobes.tech AI
Odpoveď od AI
V Kotlinu ne obstaja ključna beseda static kot v Javi, vendar obstaja več načinov za deklaracijo članov razreda ali celotnega razreda tako, da ni potrebno ustvarjati instanco:
- Object (object) — deklaracija singleton objekta, ki se inicializira enkrat in je dostopen po imenu:
object MojSingleton {
fun narediNeko() {
println("Pozdrav od singletona")
}
}
// Uporaba
MojSingleton.narediNeko()
- companion object — za deklaracijo statičnih članov znotraj razreda:
class MojRazred {
companion object {
fun statičnaMetoda() {
println("Statična metoda")
}
}
}
// Klic
MojRazred.statičnaMetoda()
- top-level funkcije in lastnosti — funkcije in spremenljivke je mogoče deklarirati zunaj razreda, bodo statične na ravni datoteke.
Če želite, da je cel razred statičen in ne zahteva ustvarjanja instance, običajno uporabite object.