Junior
Kotlin'da 'object' ifodasi nima va uni qanday ishlatish mumkin?
sobes.tech AI
AIdan javob
Kotlin'da object birlikni, noma'lum obyektlarni va hamkori obyektlarni yaratish uchun ishlatiladi.
Birliklar:
Sinfning yagona nusxasini yaratish:
object DatabaseManager {
fun connect() {
// Ulanish logikasi
}
}
Foydalanish:
DatabaseManager.connect()
Noma'lum obyektlar:
"Yoqimli" obyektni yaratish, u interfeyslarni amalga oshirishi yoki sinflardan meros olishi mumkin. Ko'pincha voqealar uchun tinglovchilar sifatida ishlatiladi.
interface ClickListener {
fun onClick()
}
fun setupButton(listener: ClickListener) {
// Tugma sozlamalari va tinglovchi
}
fun main() {
setupButton(object : ClickListener {
override fun onClick() {
println("Tugma bosildi!")
}
})
}
Noma'lum obyektlar, agar ular final bo'lsa (yoki Kotlin'da effektiv final), tashqi scope'dagi o'zgaruvchilarga kirish huquqiga ega.
Hamkori obyektlar (companion object):
Java'dagi statik a'zolarga o'xshash. Sinf ichida e'lon qilinadi.
class MyClass {
companion object {
const val TAG = "MyClass"
fun create(): MyClass {
return MyClass()
}
}
}
Foydalanish:
println(MyClass.TAG)
val instance = MyClass.create()
Hamkori obyektlar nomli bo'lishi mumkin va hatto interfeyslarni amalga oshirishi mumkin.