Il est également possible d’utiliser des generics dans des méthodes. Voici un exemple :
public class GenericsClass<T> {
private T;
public void ajouter(T t) {
this.t = t;
}
public <U> void inspecter(U){
System.out.println("T est de classe " + t.getClass().getName());
System.out.println("U est de classe " + u.getClass().getName());
}
public static void main(String[] args) {
GenericsClass<Integer> classeGenerique = new GenericsClass<Integer>();
classeGenerique.ajouter(new Integer(100));
classeGenerique.inspecter("un texte");
}
}
Ici, on définit la classe GenericsClass de type générique <T>.
La méthode main() instancie l’objet GenericsClass classeGenerique de type Integer.
La méthode ajouter(T t) stocke la valeur 100 dans la variable privée t de type Integer.
La méthode inspecter() reçoit un objet u de type générique <U>. Elle affiche le type de la classe T et le type de la classe U.