Dans l'extrait suivant:les mots-clés pour la classe externe d'une classe interne anonyme
public class a {
public void otherMethod(){}
public void doStuff(String str, InnerClass b){}
public void method(a){
doStuff("asd",
new InnerClass(){
public void innerMethod(){
otherMethod();
}
}
);
}
}
Y at-il un mot-clé pour faire référence à la classe externe de la classe interne? Fondamentalement ce que je veux faire est outer.otherMethod()
, ou quelque chose de semblable, mais ne peux pas sembler trouver n'importe quoi.
peut vous dire pourquoi 'a.otherMethod()' l'habitude de travailler? –
@ T.Todua 'OuterClassName.otherMethod()' se référerait à une méthode statique, donc vous avez besoin de 'OuterClassName.this' pour obtenir l'instance de la classe externe. –
Can OuterClassName.this être null à l'intérieur d'une classe interne, dans certains cas? –