Maison >Java >javaDidacticiel >Comment instancier un type générique en Java avec un paramètre de classe ?
Instanciation de types génériques en Java avec paramètre de classe
Les génériques en Java offrent un moyen pratique de définir des classes et des méthodes qui fonctionnent sur une variété de types de données. Cependant, instancier un objet d'un type générique peut être un peu délicat.
Supposons que vous ayez une déclaration de classe comme celle-ci :
public class Abc<T> { public T getInstanceOfT() { // I want to create an instance of T and return the same. } }
Comment pouvez-vous créer un objet de type T dans le Méthode getInstanceOfT ?
Solution :
La clé de l'instanciation un type générique consiste à transmettre le type réel comme argument à la classe générique. Cela peut être fait en utilisant la classe
public class Abc<T> { public T getInstanceOfT(Class<T> aClass) { return aClass.newInstance(); } }
Dans ce code modifié, la méthode getInstanceOfT accepte un argument de type Class
Gestion des exceptions :
Il est important de noter que vous aurez besoin pour ajouter la gestion des exceptions à votre code, car newInstance() peut lancer une InstantiationException ou IllegalAccessException.
Runtime Type :
Passer le type réel comme argument est nécessaire car le type de T n'est pas connu au moment de la compilation. Après la compilation, le code d'octet ne contient aucune information sur le type réel, il doit donc être fourni explicitement au moment de l'exécution.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!