Middle
Wat zijn 'object expressions' en 'object declarations' in Kotlin?
sobes.tech AI
Antwoord van AI
Object-uitdrukkingen (anonieme objecten) worden gebruikt om objecten van anonieme klassen te maken. Ze zijn handig voor het implementeren van eenmalige interfaces of het erven van klassen in één instantie. Syntax object : <type(s)>.
Object-verklaringen (object-verklaringen) creëren een singleton. Het is een klasse met een enkele instantie, die globaal toegankelijk is via zijn naam. Syntax object <naam>.
Vergelijkingstabel:
| Kenmerk | Object-uitdrukkingen | Object-verklaringen |
|---|---|---|
| Doel | Creëren van een anoniem object | Creëren van een singleton |
| Gebruik | Lokaal, binnen uitdrukkingen of functies | Openbaar, via de naam van het object |
| Instantiecreatie | Bij elk gebruik van de uitdrukking | Eén instantie bij eerste toegang |
| Naamgeving | Anoniem | Genoemd |
| Toepassing | Eenmalige event-Listeners, adapters | Hulpmiddelen, configuraties, toestand opslag |
Voorbeeld van object-uitdrukking:
// Een live klik-handler maken
button.setOnClickListener(object : View.OnClickListener {
override fun onClick(v: View?) {
// Actie bij klik
}
})
Voorbeeld van object-verklaring:
// Een singleton voor logging declareren
object Logger {
fun log(message: String) {
println(message)
}
}
// Gebruik van de singleton
fun processData(data: String) {
Logger.log("Verwerking van data...")
// Data verwerking
}