Zugriff auf die äußere Klasse von einer anonymen inneren Klasse aus
Innerhalb einer anonymen inneren Klasse kann der Zugriff auf Mitglieder der umschließenden äußeren Klasse mithilfe erreicht werden eine bestimmte Syntax.
Beachten Sie den folgenden Code Snippet:
public class Outer { public void otherMethod() {} public void doStuff(String str, InnerClass b) {} public void method(Outer a) { doStuff("asd", new InnerClass() { public void innerMethod() { // How to access outer.otherMethod() here? } }); } }
Um von der anonymen inneren Klasse aus auf die Methode „outerMethod()“ der äußeren Klasse zuzugreifen, stellt Java die Syntax „OuterClassName.this“ bereit. In diesem Fall würden Sie Folgendes verwenden:
Outer.this.otherMethod();
Dadurch kann die anonyme innere Klasse auf die Mitglieder der äußeren Klasse zugreifen, als wären sie innerhalb der inneren Klasse selbst definiert. Daher kann der Code in innerMethod() nun mit der Syntax auf äußereMethod() zugreifen:
Other.this.otherMethod();
Das obige ist der detaillierte Inhalt vonWie greife ich von einer anonymen inneren Klasse aus auf Methoden der äußeren Klasse zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!