Действительно ли возможно получить ссылку на this
из Java внутренний класс?
т.е.
class Outer {
void aMethod() {
NewClass newClass = new NewClass() {
void bMethod() {
// How to I get access to "this" (pointing to outer) from here?
}
};
}
}
Вы можете получить доступ к экземпляру внешнего класса следующим образом:
Outer.this
Внешний. Это
т.е.
class Outer {
void aMethod() {
NewClass newClass = new NewClass() {
void bMethod() {
System.out.println( Outer.this.getClass().getName() ); // print Outer
}
};
}
}
Кстати, в Java имена классов начинаются с верхнего регистра по соглашению.
да, вы можете использовать имя внешнего класса с this . outer.this