Access "this" from Java anonymous class

anonymous-class, java, this

Solution

Container.this.select();

Problem

Given the following code: ``` public interface Selectable { public void select(); } public class Container implements Selectable { public void select() { ... } public void createAnonymousClass() { Selectable s = new Selectable() { public void select() { //see comment below. } }; } } ``` I want to access `Container.select()` from within my anonymous class' `select()` method. However, `this.select()` would again call the anonymous class' `select()` method. My suggestion would be: Introduce a field into Container, e.g. ``` private Container self = this; ``` Now I can access `Container.select()` by calling `self.select()` from within the anonymous class. Is this a reasonable way? Or are there any better ways?

Original source