2012-04-03 12 views
1

Ich las some Tutorial, in dem ich über Begriffe wie
kam Key<Car> rootKey = new Key<Car>(Car.class, 959);
Was in diesem Code bedeutet <Car>? Warum werden diese "<>" Symbole hier verwendet? Bitte helfen Sie.Was bedeutet <Something> in ClassName <Something > in Java angeben?

+1

Willkommen in der Welt der Generika. –

+1

http://docs.oracle.com/javase/tutorial/java/generics/generics.html – Adam

+0

mögliche Duplikate von [Was bedeutet < and > bedeuten, wie implementiert vergleichbar ?] (Http://stackoverflow.com/questions/450520/was-tun-und-so-wie-implementiert-vergleichbarbiginteger) – Tomalak

Antwort

3

Die in Ihrem Snippet steht für einen generischen Typspezifizierer. Sie können den Klassenschlüssel mit einem anderen Typ als "Auto" instanziieren und seine Methoden sind zum Zeitpunkt der Kompilierung typsicher für diese Variable.

Zum Beispiel ist die folgende Anweisung typsicher, wie Ihr Beispiel ist:

Key<String> rootKey = new Key<String>(String.class, "someString"); 

http://docs.oracle.com/javase/tutorial/java/generics/gentypes.html Siehe für weitere Informationen.

0
  1. Auto ist Ihre "Car-Objektklasse" Sie vorbei in
  2. <> Symbole für die Angabe Art von Objekt verwendet, um Sie für Ihre Key-Klasse wollen
  3. .