Middle
Mis on 'objekti väljendid' ja 'objekti deklaratsioonid' Kotlinis?
sobes.tech AI
Vastus AI-lt
Objekti väljendid (anonüümsed objektid) kasutatakse anonüümsete klasside objektide loomiseks. Need on kasulikud ühekorraliste liideste või klasside pärimise puhul ühes eksemplaris. Süntaks object : <liik(ud)>.
Objekti deklaratsioonid (objektide deklaratsioonid) loovad singletoni. See on klass ühe eksemplariga, mis on globaalselt kättesaadav tema nime kaudu. Süntaks object <nimi>.
Võrdlustabel:
| Omadus | Objektide väljendid | Objektide deklaratsioonid |
|---|---|---|
| Otstarve | Anonüümse objekti loomine | Singletoni loomine |
| Kasutamine | Kohalik, väljendite või funktsioonide sees | Üldkasutatav, nime järgi |
| Eksemplaride loomine | Iga kasutamise korral väljendist | Üks eksemplar esimese kasutuse ajal |
| Nimetus | Anonüümne | Nimetatud |
| Rakendus | Ühekordsed sündmuste kuulajad, adapterid | Abivahendid, konfiguratsioonid, olekuhoidlad |
Objekti väljendi näide:
// Kliki sündmuse töötleja "otse" loomine
button.setOnClickListener(object : View.OnClickListener {
override fun onClick(v: View?) {
// Tegevus klikkimisel
}
})
Objekti deklaratsiooni näide:
// Singletoni deklaratsioon logimise jaoks
object Logger {
fun log(message: String) {
println(message)
}
}
// Singletoni kasutamine
fun processData(data: String) {
Logger.log("Andmete töötlemine...")
// Andmete töötlemine
}