Middle
Šta su 'izrazi objekta' i 'deklaracije objekta' u Kotlinu?
sobes.tech АИ
Одговор од АИ
Izrazi objekata (anonimni objekti) koriste se za kreiranje objekata anonimnih klasa. Oni su korisni za implementaciju jednokratnih interfejsa ili nasleđivanje od klasa u jednom primeru. Sintaksa object : <tip(ovi)>.
Deklaracije objekata (deklaracije objekata) kreiraju singleton. To je klasa sa jednim primerkom, dostupnom globalno putem njenog imena. Sintaksa object <ime>.
Tabela poređenja:
| Osobina | Izrazi objekata | Deklaracije objekata |
|---|---|---|
| Svrha | Kreiranje anonimnog objekta | Kreiranje singletona |
| Upotreba | Lokalno, unutar izraza ili funkcija | Javno, po imenu objekta |
| Kreiranje instanci | Pri svakom korišćenju izraza | Jedan primerak pri prvom pristupu |
| Nomenklatura | Anonimno | Nomenisano |
| Primena | Jednokratni slušaoci događaja, adapteri | Pomoćne funkcije, konfiguracije, skladišta stanja |
Primer izraza objekta:
// Kreiranje handlera za klik "uživo"
button.setOnClickListener(object : View.OnClickListener {
override fun onClick(v: View?) {
// Akcija pri kliku
}
})
Primer deklaracije objekta:
// Deklaracija singletona za logovanje
object Logger {
fun log(message: String) {
println(message)
}
}
// Korišćenje singletona
fun processData(data: String) {
Logger.log("Obrada podataka...")
// Obrada podataka
}