2016-04-21 11 views

Antwort

0

Es bedeutet leere Klassenkörper des erstellten TypeToken.

1

Sie erstellen eine neue Implementierung (wenn TypeToken eine Schnittstelle ist) oder eine Erweiterung (wenn TypeToken eine Klasse ist) inline. In Ihrem Fall ist der Klassenkörper leer, also {}. Dieses Konzept ist bekannt als anonyme innere Klasse.

+0

Vielen Dank. – Lechance

+0

@Lechance: Bitte denken Sie daran, hilfreiche Antworten hinzuzufügen und die beste anzunehmen: [Was soll ich tun, wenn jemand meine Frage beantwortet?] (Http://stackoverflow.com/help/someone-answers) – Jan

1

TypeToken ist eine Klasse und erstellt nur eine anonyme Unterklasse von TypeToken Klasse und ruft getType() Methode aus dem Objekt in derselben Zeile auf. Sie können wie folgt es der Einfachheit halber aufgeteilt,

TypeToken<List<String>> typeList = new TypeToken<List<String>>(){}; 
Type type = typeList.getType(); 

Werfen Sie einen Blick here, wenn Sie noch nicht kennen erklärt anonymen Klassen sind.

+0

Vielen Dank. – Lechance

+0

@Lechance Ich empfehle [eine hilfreiche Antwort zu akzeptieren.] (Http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) –

0

ist eine abstrakte Klasse (wird nur als abstrakt deklariert, erfordert jedoch keine Methoden) und Sie erben es mit Ihrer anonymen Klasse. Von TypeToken javadocs:

-Capture ein generischer Typ mit einer (meist anonym) Unterklasse und lösen es gegen einen Kontext-Klasse, der Parameter

Verwandte Themen