Le <> en java fait référence aux génériques. Son utilisation vient seulement de commencer dans Java5 et les versions 1 à 4 ne sont pas prises en charge. Principalement utilisé pour spécifier les types de données qui apparaissent dans la collection ! Par exemple : un bol peut contenir de nombreux types d'aliments, et si vous ajoutez un type générique, tel que "nouilles", alors ce bol ne peut contenir que des aliments comme des "nouilles" !
Exemple :
1. Les paramètres de type générique ne peuvent être que des types de classe (y compris des classes personnalisées), pas des types simples.
2. Un même type générique peut correspondre à plusieurs versions (car le type du paramètre est incertain), et différentes versions d'instances de classe générique sont incompatibles.
3. Les génériques peuvent avoir plusieurs paramètres de type.
4. Les types de paramètres génériques peuvent utiliser l'instruction extends, telle que
5. Les types de paramètres génériques peuvent également être des types génériques.
Par exemple : Class> classType = Class.forName("java.lang.String");
Les génériques ont aussi des interfaces, des méthodes, etc. Il y a beaucoup de contenu et cela prend du temps. Il faut beaucoup d'efforts pour le comprendre et l'appliquer habilement.
Voici deux exemples que j'ai écrits lorsque j'ai découvert les génériques (écrits en fonction de mes impressions) pour obtenir la même fonction. L'un utilise des génériques et l'autre non. Par comparaison, vous pouvez rapidement apprendre l'application de. les génériques. Après avoir appris cela, j'ai essentiellement appris 70 % du contenu des génériques.
Exemple 1 : Utilisation de génériques
public class Gen
public Gen(T ob) { this.ob = ob; >
public T getOb() {return ob;}
public void setOb(T ob) {this.ob = ob;}
public void showType() {System.out.println("Le type réel de T est : " + ob.getClass().getName());}}
public class GenDemo { public static void main(String[] args){//Définir une version Integer de la classe générique Gen
Gen
intOb .showType ();
int i= intOb.getOb();
System.out.println("value= " + i);
System.out.println( "---------------------------------");
//Définition du générique A Version chaîne de type Gen
Gen
strOb.showType();
String s =strOb.getOb();
System.out.println("value= " + s);}}
Exemple 2 : Les génériques ne sont pas utilisés
public class Gen2 {private Object ob; //Définir un membre de type général
public Gen2(Object ob) {this.ob = ob;>
public Object getOb () {return ob;}
public void setOb(Object ob) {this.ob = ob;}
public void showTyep() {System.out.println("La valeur réelle de T Le type est : " + ob.getClass().getName());}}
public class GenDemo2 {public static void main(String[] args) { //Définir une version entière de la classe Gen2
Gen2 intOb = new Gen2(new Integer(88));
intOb.showTyep();
int i = (Integer) intOb.getOb();
System.out.println("value= " + i);
System.out.println("---------------------------------- ------- -------------");
//Définir une version String de la classe Gen2
Gen2 strOb = new Gen2( "Bonjour Gen!");
strOb.showTyep();
String s = (String) strOb.getOb();
System.out.println(" value= " + s); }}
Résultats de l'exécution :
Les résultats de l'exécution de la démo pour les deux exemples sont les mêmes. La sortie de la console est la suivante :
Le type réel de T est :
java.lang.Integer
value= 88
---------------- ------------- -----Le type réel de
T est : java.lang.String
value= Hello Gen!
Processus terminé avec le code de sortie 0
Comprenez cela, et les applications génériques de base et la lecture de code ne seront plus un problème à l'avenir.
Pour plus de tutoriels d'introduction à Java gratuits, veuillez visiter le site Web PHP chinois.
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!