Доступ к «this» из Java анонимного класса
Учитывая следующий код:
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.
}
};
}
}
Я хочу получить доступContainer.select()
из моего анонимного класса & apos;select()
метод. Тем не мение,this.select()
снова вызвал бы анонимный класс & apos;select()
метод.
Мое предложение будет:
Введите поле в контейнер, например,
private Container self = this;
Теперь я могу получить доступContainer.select()
позвонив по телефонуself.select()
изнутри анонимного класса.
Это разумный способ? Или есть способы получше?