Heim >Java >javaLernprogramm >Wie funktioniert Javas selbstreferenzieller Enum-Typparameter „E erweitert Enum'?
Java-Enum-Definition
Die Java-Enum-Klasse verwendet einen selbstreferenziellen Typparameter E, der Enum
Erklärung
Der Typparameter gibt an, dass der Aufzählungstyp von einer Aufzählung mit demselben Typargument abgeleitet sein muss. Dadurch kann eine Enumeration in ihrer API auf sich selbst verweisen, beispielsweise durch die Implementierung von Comparable
Zusätzliche Beispiele
Dieses Konzept kann auf andere Szenarien angewendet werden, in denen selbstreferenzierende Typparameter nützlich sind . Betrachten Sie das Beispiel von Nachrichten- und Builder-Paaren in ProtocolBuffers. Die Schnittstellen IBuilder
Diese selbst- Durch die referenzielle Parametrisierung wird sichergestellt, dass Builder und Nachrichten problemlos innerhalb der API gepaart und manipuliert werden können, während ihre Implementierungsdetails daraus abstrahiert werden Benutzer.
Einschränkungen
Selbstreferenzielle Typparameter bieten zwar Vorteile, verhindern jedoch nicht die Erstellung ungültiger Typen. Beispielsweise ist der folgende Code technisch gültig, aber möglicherweise nicht wünschenswert:
public class First extends Enum<First> {} public class Second extends Enum<First> {}
In diesem Fall implementiert Second Comparable
Das Verständnis selbstreferenzieller Typparameter in Enum und anderen Szenarien ist entscheidend für die effektive Nutzung des generischen Systems von Java. Durch die Nutzung dieses Konzepts können Entwickler kohärentere und wartbarere Codebasen erstellen.
Das obige ist der detaillierte Inhalt vonWie funktioniert Javas selbstreferenzieller Enum-Typparameter „E erweitert Enum'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!