Sobes.tech
Junior — Middle

Dans quels cas peut-on utiliser le modificateur reified à l'intérieur des fonctions inline en Kotlin?

sobes.tech IA

Réponse de l'IA

En Kotlin, le modificateur reified s'applique uniquement à l'intérieur des fonctions inline et permet d'accéder au type du paramètre à l'exécution, ce qui est généralement impossible en raison de l'effacement de type (type erasure).

L'utilisation de reified est justifiée lorsque vous devez:

  • Vérifier le type avec is ou !is.
  • Créer une instance du type via réflexion.
  • Obtenir la classe du type T::class ou T::class.java.

Exemple:

inline fun <reified T> Gson.fromJson(json: String): T {
    return this.fromJson(json, T::class.java)
}

Ici, reified permet d'utiliser T::class.java à l'intérieur de la fonction, ce qui est impossible sans inline et reified.