Junior — Middle
Comment fonctionne la réflexion en Kotlin?
sobes.tech IA
Réponse de l'IA
En Kotlin, la réflexion est effectuée à l'aide du paquet kotlin.reflect. La classe principale est KClass, qui représente une classe au moment de l'exécution. Grâce à la réflexion, on peut obtenir des informations sur les propriétés, fonctions, constructeurs et annotations des classes.
Exemple pour obtenir le nom de la classe et la liste de ses propriétés:
import kotlin.reflect.full.memberProperties
class User(val name: String, val age: Int)
fun main() {
val kClass = User::class
println("Nom de la classe : ${kClass.simpleName}")
for (prop in kClass.memberProperties) {
println("Propriété : ${prop.name}")
}
}
Il est également possible d'appeler des fonctions et de créer des instances via la réflexion, mais pour cela il est parfois nécessaire d'utiliser l'API Java Reflection (java.lang.reflect).
La réflexion est utile pour l'analyse dynamique et le travail avec des objets, par exemple lors de la sérialisation, DI ou lors de l'écriture de frameworks.