Question

This question already has an answer here:

In the following snippet:

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

Is there a keyword to refer to the outer class from the inner class? Basically what I want to do is outer.otherMethod(), or something of the like, but can't seem to find anything.

Was it helpful?

Solution

In general you use OuterClassName.this to refer to the enclosing instance of the outer class.

In your example that would be a.this.otherMethod()

OTHER TIPS

OuterClassName.this.outerClassMethod();
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top