Domanda

Nel frammento di codice seguente:

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();
                }
            }
        );
    }
}

C'è una parola chiave di riferimento per l'esterno classe dalla classe interna?Fondamentalmente quello che voglio fare è outer.otherMethod(), o qualcosa di simile, ma non riesco a trovare nulla.

È stato utile?

Soluzione

In generale si utilizza OuterClassName.this per consultare l'allegando istanza della classe esterna.

Nel tuo esempio sarebbe a.this.otherMethod()

Altri suggerimenti

OuterClassName.this.outerClassMethod();
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top