Wie können wir ein Objekt der Schnittstelle in Java erstellen? [Duplikat]

7

Wie funktioniert dieser Code? Ich bin total verwirrt ...

%Vor%     
swapyonubuntu 02.06.2013, 06:53
quelle

4 Antworten

18

Mit dieser Syntax erstellen Sie eine anonyme Klasse , die vollkommen legal ist.

Intern werden anonyme Klassen in eine eigene Klasse kompiliert, die als EnclosingClass$n bezeichnet wird, wobei der Name der umschließenden Klasse vor dem $ -Zeichen steht. und n erhöht sich für jede weitere anonyme Klasse. Das bedeutet, dass die folgende Klasse erstellt wird:

%Vor%

Dann wird der Code in main kompiliert, um intern die neu definierte anonyme Klasse zu verwenden:

%Vor%     
Vulcan 02.06.2013, 06:58
quelle
5

Sie erstellen eine Instanz (on-the-fly) der anonymen Klasse , die implementiert die Schnittstelle überprüfen.

    
Eng.Fouad 02.06.2013 06:57
quelle
2

Ihre Schnittstellenreferenz kann das Objekt der implementierenden Klasse enthalten. Sie implementieren eine anonyme Klasse und weisen sie der Referenz der Schnittstelle zu, die in JAVA absolut zulässig ist.

    
Juned Ahsan 02.06.2013 06:58
quelle
2

Es ist eine anonyme Klasse. Ihre Klasse check ist eine Schnittstelle. Anonyme Klasse definiert eine Implementierung der gegebenen Schnittstelle im laufenden Betrieb. So können Sie keine separate Klasse für die Implementierung von Interface erstellen. Dieser Ansatz ist nur nützlich, wenn Sie wissen, dass Sie diese Implementierung nirgendwo sonst im Code benötigen.

Ich hoffe, diese Erklärung hilft !!

    
Abhay Agarwal 02.06.2013 07:25
quelle

Tags und Links