Middle
Welke standaarddelegates ken je?
sobes.tech AI
Antwoord van AI
by lazy— wordt gebruikt voor lazy initialisatie van een eigenschap. De waarde wordt berekend bij de eerste verwijzing naar de eigenschap en wordt in cache opgeslagen.val lazyValue: String by lazy { println("initialized") // Alleen bij de eerste verwijzing "Hello" }Delegates.observable— delegate die een actie uitvoert bij elke wijziging van de waarde van de eigenschap.import kotlin.properties.Delegates var name: String by Delegates.observable("initiële waarde") { prop, old, new -> println("Waarde voor ${prop.name} is veranderd van $old naar $new") }Delegates.vetoable— delegate die het mogelijk maakt om een wijziging van de eigenschap te onderscheppen en te annuleren op basis van een voorwaarde.import kotlin.properties.Delegates var age: Int by Delegates.vetoable(10) { prop, old, new -> new >= 0 // Alleen niet-negatieve waarden toegestaan }