Heute werden wir sehen, wie man die generischen Typen in Java verwendet . Es ist etwas Interessantes, da es uns erlaubt, Funktionen zu schreiben, die für jeden Typ geeignet sind. Es spielt keine Rolle, ob wir Ganzzahlen, Zeichenketten, Dezimalzahlen usw. übergeben. Mit Java können wir auch generische Klassen erstellen, nicht nur Funktionen.
Schauen wir uns ein paar Beispiele an, zuerst eine generische Klasse und schließlich eine Funktion. Die Beispiele sind so einfach, dass sie leichter zu verstehen sind.
1. Allgemeine Klasse in Java
Das erste, was wir sehen werden, ist der vollständige Code, und im Folgenden werden wir ihn kurz erklären, falls der Code nicht verstanden wird.
öffentliche Klasse ClaseGenerica <T> { privates T-Element; public ClassGenerica (T e) { Element = e; } public T getElement () { Artikel zurückgeben; } public static void main (String args []) { ClassGeneric <Integer> cg1 = new ClassGeneric <> (1); System.out.println ("cg1 >>" + cg1.getElement ()); ClassGeneric <String> cg2 = new ClassGenerica <> ("Hallo"); System.out.println ("cg2 >>" + cg2.getElement ()); } }
Sehen wir uns zuerst die Deklaration der Klasse an. Sie können erkennen, dass nach dem Namen der Klasse <T> angezeigt wird, dass es sich um eine generische Klasse handelt. T kann eine Zeichenfolge, eine Ganzzahl usw. sein. Es wird zu gegebener Zeit durch einen echten Typ ersetzt.
Wir haben eine Variable namens element, die vom Typ T ist (also generisch) . Im Konstruktor füllen wir es variabel mit den Daten, die uns passieren, auch vom Typ T logisch.
Bevor wir zur Hauptseite gelangen, erstellen wir eine Funktion, um das Element zu erhalten, damit es einen Typ T zurückgibt. Diese Klasse wird nicht benötigt, da es sich um den Code handelt, den wir direkt für das Element aufrufen könnten, aber damit Sie die Art der Rückgabe der Funktion nicht sehen es ist zu viel
Im Hauptteil erstellen wir nur zwei Objekte dieser Klasse, das erste vom Typ Integer und das zweite vom Typ String, und zeigen dem Element, ob es korrekt funktioniert.
Wenn wir den Code kompilieren und ausführen, sehen wir Folgendes:
2. Generische Funktion in Java
Sehen wir uns nun eine generische Funktion an, so wie zuvor der vollständige Code als erstes gelehrt und später erklärt wurde.
import java.util.ArrayList; public class Genericos { public static <T> void show (ArrayList <T> -Eintrag) { input.stream (). forEach ((Element) -> { System.out.print (Element + ""); }); System.out.println (" n"); } public static void main (String args []) { ArrayList <Integer> list1 = new ArrayList <> (); für (int i = 1; i <= 6; i ++) { list1.add (i); } ArrayList <String> list2 = neue ArrayList <String> () {{ add ("this"); add ("is"); add ("a"); add ("test"); }}; System.out.println ("--- Using Integer ArrayList ---"); show (list1); System.out.println ("--- Using String ArrayList ---"); show (list2); } }
Wir haben eine Funktion namens show, die eine ArrayList eines beliebigen Typs empfängt und diese mit ihren Daten ausführt . In der Hauptdatei erstellen wir zwei ArrayList , eine vom Typ Integer und eine vom Typ String . Wir initialisieren sie mit einigen Daten, um den Test durchzuführen. Zuletzt rufen wir die show-Funktion für jede ArrayList auf, um zu überprüfen, ob sie korrekt funktioniert.
Wenn wir kompilieren und ausführen, sehen wir Folgendes:
Hier endet das Tutorial, Sie haben gesehen, wie einfach es in Java ist, generische Daten zu verwenden und somit Klassen zu haben, die für verschiedene Arten von Objekten wiederverwendet werden können. Wenn wir beispielsweise einen Code zum Speichern von Rechnungen und einen anderen zum Speichern von Kundendaten benötigen, können wir Generika mit nur einer Klasse verwenden.