Sobes.tech
Junior

Čo je výraz 'object' v Kotlin a ako sa dá použiť?

sobes.tech AI

Odpoveď od AI

object v Kotlinu sa využíva na tvorbu singletonov, anonymných objektov a objektov sprievodcov (companion object).

Singletony:

Vytvorenie jedinej inštancie triedy:

object DatabaseManager {
    fun connect() {
        // Logika pripojenia
    }
}

Použitie:

DatabaseManager.connect()

Anonymné objekty:

Vytvorenie "na mieste" objektu, ktorý môže implementovať rozhrania alebo dediť z tried. Často sa používa pre poslucháčov udalostí.

interface ClickListener {
    fun onClick()
}

fun setupButton(listener: ClickListener) {
    // Nastavenie tlačidla s poslucháčom
}

fun main() {
    setupButton(object : ClickListener {
        override fun onClick() {
            println("Tlačidlo stlačené!")
        }
    })
}

Anonimné objekty majú prístup k premenným z okolia, ak sú final (alebo efektívne final v Kotlin).

Objekty sprievodcov (companion object):

Podobne ako statické členy v Jave. Deklarujú sa vnútri triedy.

class MyClass {
    companion object {
        const val TAG = "MyClass"

        fun create(): MyClass {
            return MyClass()
        }
    }
}

Použitie:

println(MyClass.TAG)
val instance = MyClass.create()

Objekty sprievodcov môžu mať mená a môžu implementovať rozhrania.