You can access the external using OuterClass.this or call the method with OuterClass.this.method() .
However, as a design point, the separation of name is confusing, to say the least. It would be reasonable if the inner class was an extension or, say, a concrete implementation of an abstract method, but that would be clearer by calling the super.method method. Calling the super method directly (do you think you're going to do this?) Is confusing.
Steve B.
source share