Das <> in Java bezieht sich auf Generika. Es wurde erst in Java5 verwendet und 1-4 werden nicht unterstützt. Wird hauptsächlich zur Angabe der in der Sammlung angezeigten Datentypen verwendet! Zum Beispiel: Eine Schüssel kann viele Arten von Lebensmitteln aufnehmen, und wenn Sie einen generischen Typ hinzufügen, z. B. „Nudeln“, dann kann diese Schüssel nur Lebensmittel wie „Nudeln“ enthalten!
Beispiel:
1. Generische Typparameter können nur Klassentypen (einschließlich benutzerdefinierter Klassen) sein, keine einfachen Typen.
2. Derselbe generische Typ kann mehreren Versionen entsprechen (da der Parametertyp unsicher ist) und verschiedene Versionen generischer Klasseninstanzen nicht kompatibel sind.
3. Generics können mehrere Typparameter haben.
4. Generische Parametertypen können die Extens-Anweisung verwenden, z. B.
5. Generische Parametertypen können auch Platzhaltertypen sein.
Zum Beispiel: Class classType = Class.forName("java.lang.String");
Generika haben auch Schnittstellen, Methoden usw. Es gibt viele Inhalte und es dauert eine Weile. Es erfordert viel Mühe, es zu verstehen und geschickt anzuwenden.
Hier sind zwei Beispiele, die ich geschrieben habe, als ich etwas über Generika lernte (basierend auf meinen Eindrücken), um die gleiche Funktion zu erreichen, und das andere nicht. Durch Vergleich kann ich schnell die Anwendung lernen Nachdem ich das gelernt hatte, lernte ich im Grunde 70 % des Inhalts von Generika.
Beispiel 1: Verwendung von Generika
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("Der tatsächliche Typ von T ist: " + ob.getClass().getName());}}
public class GenDemo { public static void main(String[] args){//Definieren Sie eine Integer-Version der generischen Klasse Gen
Gen
intOb .showType ();
int i= intOb.getOb();
System.out.println("value= " + i);
System.out println( "----------------------------------");
//Definition des generischen A String-Version des Typs Gen
Gen
strOb.showType();
String s =strOb.getOb();
System.out.println("value= " + s);}}
Beispiel 2: Generika werden nicht verwendet
public class Gen2 {private Object ob; //Definieren Sie ein allgemeines Typmitglied
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("Der tatsächliche Wert von T Der Typ ist: " + ob.getClass().getName());}}
public class GenDemo2 {public static void main(String[] args) { //Definieren Sie eine Integer-Version der Klasse Gen2
Gen2 intOb = new Gen2(new Integer(88));
intOb.showTyep();
int i = (Integer) intOb.getOb();
System.out.println("value= " + i);
System.out.println("------------------- ------- -------------");
//Definieren Sie eine String-Version der Klasse Gen2
Gen2 strOb = new Gen2( „Hallo Gen!“);
strOb.showTyep();
String s = (String) strOb.getOb();
System.out.println(" value= " + s); }}
Laufergebnisse:
Die Ergebnisse der Ausführung der Demo in den beiden Beispielen sind die gleichen. Die Konsolenausgabe lautet wie folgt:
Der tatsächliche Typ von T ist:
java.lang.Integer
value= 88
---------------- ------------- -----Der tatsächliche Typ von
T ist: java.lang.String
value= Hello Gen!
Prozess mit Exit-Code 0 abgeschlossen
Verstehen Sie dies, und grundlegende generische Anwendungen und das Lesen von Code werden in Zukunft kein Problem darstellen.
Weitere kostenloseJava-Einführungs-Tutorialsfinden Sie auf der chinesischen PHP-Website.
Das obige ist der detaillierte Inhalt vonWas bedeutet <> in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!