Junior — Middle
როგორ შეიძლება მთელი კლასი Kotlin-ში გამოაცხადოთ სტატიკურად, რათა ის არ საჭიროებდეს ინстанციის შექმნას?
sobes.tech AI
პასუხი AI-სგან
Kotlin-да Java-სა მსგავსი static საკვანძო სიტყვა არ არსებობს, მაგრამ არსებობს რამდენიმე გზა კლასის წევრების ან მთელი კლასის გამოცხადებისთვის ისე, რომ ობიექტის შექმნა არ იყოს საჭირო:
- Object (object) — სინგლტონ ობიექტის გამოცხადება, რომელიც ერთხელ ინიცილირდება და სახელით ხელმისაწვდომია:
object MySingleton {
fun doSomething() {
println("გამარჯობა სინგლტონიდან")
}
}
// გამოყენება
MySingleton.doSomething()
- companion object — სტატიკური წევრების გამოცხადება კლასის შიგნით:
class MyClass {
companion object {
fun staticMethod() {
println("სტატიკური მეთოდი")
}
}
}
// გამოძახება
MyClass.staticMethod()
- top-level ფუნქციები და თვისებები — ფუნქციებს და ცვლადებს შეიძლება გამოაცხადოთ კლასის გარეთ, ისინი იქნება ფაილის დონეზე სტატიკური.
თუ გსურთ, რომ მთელი კლასი იყოს სტატიკური და არ საჭიროებდეს ობიექტის შექმნას, ჩვეულებრივ იყენებენ object-ს.