Junior — Middle
Explica el principio de funcionamiento de las propiedades delegadas en el lenguaje de programación Kotlin.
sobes.tech AI
Respuesta de la IA
En Kotlin, las propiedades delegadas permiten redirigir las operaciones de lectura y escritura de una propiedad a otro objeto, el delegado. Esto simplifica la reutilización de la lógica de acceso a los datos.
Sintaxis:
var nombreDePropiedad: Tipo por delegado
Por ejemplo, el delegado estándar lazy inicializa el valor en la primera llamada:
val valorLazy: String por lazy {
println("Cálculo del valor")
"¡Hola, Kotlin!"
}
fun main() {
println(valorLazy) // Aquí se calculará y mostrará el valor
println(valorLazy) // Aquí se tomará del caché
}
Puedes crear tus propios delegados implementando la interfaz ReadOnlyProperty o ReadWriteProperty. Los delegados son útiles para implementar propiedades con inicialización diferida, observación de cambios, almacenamiento en mapas, etc.