Junior — Middle
¿Cómo se realiza el trabajo con la reflexión en Kotlin?
sobes.tech AI
Respuesta de la IA
En Kotlin, el trabajo con reflexión se realiza mediante el paquete kotlin.reflect. La clase principal es KClass, que representa una clase en tiempo de ejecución. A través de la reflexión, se puede obtener información sobre propiedades, funciones, constructores y anotaciones de las clases.
Ejemplo de cómo obtener el nombre de la clase y la lista de sus propiedades:
import kotlin.reflect.full.memberProperties
class User(val name: String, val age: Int)
fun main() {
val kClass = User::class
println("Nombre de la clase: ${kClass.simpleName}")
for (prop in kClass.memberProperties) {
println("Propiedad: ${prop.name}")
}
}
También se pueden invocar funciones y crear instancias mediante reflexión, pero para ello a veces es necesario usar Java Reflection API (java.lang.reflect).
La reflexión es útil para análisis dinámico y trabajo con objetos, por ejemplo, en serialización, DI o al escribir frameworks.