Heim  >  Artikel  >  Java  >  Wie man Java-Generika versteht

Wie man Java-Generika versteht

藏色散人
藏色散人Original
2019-05-31 11:56:192893Durchsuche

Wie man Java-Generika versteht

Generika sind eine neue Funktion von Java SE 1.5. Die Definition von Generika in „Java Core Technology“ lautet:

„Generika“ bedeutet, dass geschriebener Code wiederverwendet werden kann verschiedene Arten von Objekten.

Es ist ersichtlich, dass Generika vorgeschlagen wurden, um mehr wiederverwendbaren Code zu schreiben.

Das Wesentliche an Generika ist ein parametrisierter Typ, was bedeutet, dass der Datentyp, mit dem gearbeitet wird, als Parameter angegeben wird.

Zum Beispiel die gemeinsame Sammlungsklasse LinkedList:

public class LinkedList<E> extends AbstractSequentialList<E> implements
    List<E>, Deque<E>, Queue<E>, Cloneable, Serializable {
//...
transient Link<E> voidLink;
//...

Sie können sehen, dass es nach dem Namen der LinkedList1a4db2c2c2313771e5742b6debf617a1-Klasse einen speziellen Teil gibt Name, den es implementiert, und der Typ Link1a4db2c2c2313771e5742b6debf617a1 enthält auch ein „“. Dieses Symbol ist der Typparameter, der die Übergabe verschiedener Typen zur Laufzeit ermöglicht, z. B. eine neue LinkedList Seine Mitglieder werden gespeichert. Der Typ ist ebenfalls String.

Tatsächlich sind die Hauptziele der Einführung von Generika die folgenden:

● Typensicherheit

Die Hauptziele von generics Ziel ist es, die Typsicherheit von Java-Programmen zu verbessern

ClassCastException-Ausnahmen, die durch falsche Java-Typen verursacht werden, können während der Kompilierung erkannt werden

Nach dem Prinzip, dass ein Fehler umso weniger auftritt, je früher er auftritt teuer ist es

● Eliminieren Sie Casts

Ein Nebenvorteil von Generika besteht darin, dass Sie bei der Verwendung direkt den Zieltyp erhalten können, wodurch viele Casts eliminiert werden

Was Sie bekommen, ist das, was Sie brauchen, was den Code besser lesbar macht und die Fehlerwahrscheinlichkeit verringert

● Mögliche Leistungssteigerungen

Aufgrund der Art und Weise, wie Generika implementiert werden , die Unterstützung von Generika erfordert (fast) keine JVM oder Klassen. Dateiänderungen

Alle Arbeiten werden im Compiler erledigt

Der vom Compiler generierte Code ist fast identisch mit dem Code, der ohne die Verwendung von Generika geschrieben wurde (und Casts), nur mehr garantiert. Geben Sie einfach Sicherheit ein

Das obige ist der detaillierte Inhalt vonWie man Java-Generika versteht. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn