Junior — Middle
Какви са начините да обявите цял клас в Kotlin като статичен, така че да не изисква създаване на екземпляр?
sobes.tech AI
Отговор от AI
В Kotlin няма ключовата дума static, както в Java, но има няколко начина да обявите членове на клас или цял клас по такъв начин, че да не е необходимо да създавате екземпляр:
- Object (object) — декларация на singleton обект, който се инициализира веднъж и е достъпен по име:
object MySingleton {
fun doSomething() {
println("Здравей от singleton")
}
}
// Използване
MySingleton.doSomething()
- companion object — за обявяване на статични членове вътре в клас:
class MyClass {
companion object {
fun staticMethod() {
println("Статичен метод")
}
}
}
// Викаме
MyClass.staticMethod()
- top-level функции и свойства — функции и променливи могат да бъдат обявени извън класа, те ще бъдат статични на ниво файл.
Ако искате цялата класа да бъде статична и да не изисква създаване на екземпляр, обикновено използвайте object.