Eine allgemeine Frage zur Klassendeklaration

stardust112

Grünschnabel
Hallo zusammen,

hab ein kleines Problem in Java etwas nachzuvollziehen.

Bei der Deklaration einer Klasse, besteht die Möglichkeit hinter dem Klassennamen <var> anzugeben in folgender Form zum Beispiel:

Code:
public class ArrayStack<V> {...}

Wozu dient diese Anweisung? Ich habe sie bisher nicht in meinen Javabüchern finden können... Um eine Erklärung wäre ich echt dankbar!

Gruß
Stardust
 
Moin!
Dieses Prinzip nennt sich Generics und gibt es seit Java Version 5.
Ganz simpel gesprochen, spezifizierst du den Klassentyp, welcher dein ArrayStack beinhaltet. Ein get Methode liefert automatisch die spezifierte Klasse zurück. Ein Cast ist somit nicht mehr nötig.
Genauer beschrieben wir das alles hier:
http://java.sun.com/j2se/1.5.0/docs/guide/language/generics.html

*grüssle*
MeinerEiner
 
Hierbei handelt sichs um in Java 1.5. eingeführte Generics, siehe z.B. dieses Tutorial.

Kurz gesagt können damit Inhalte einer Liste vorzudefiniert werden, wodurch spätere Casts a la

Code:
DeineKlasse foo = (DeineKlasse)list.elementAt(2);

entfallen.

//Edit: Haha, MeinerEiner_80, da sind wir uns wohl einig :) War etwas zu spät...
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück