如何从内部类访问外部类的“this”?
是否有可能在Java内部类中获得this
的引用?
即
class Outer { void aMethod() { NewClass newClass = new NewClass() { void bMethod() { // How to I get access to "this" (pointing to outer) from here? } }; } }
你可以像这样访问外部类的实例:
Outer.this
Outer.this
即。
class Outer { void aMethod() { NewClass newClass = new NewClass() { void bMethod() { System.out.println( Outer.this.getClass().getName() ); // print Outer } }; } }
顺便说一下在Java中,类名以大写字母开头。
将外部类的类名添加到此:
outer.this
是的,你可以用这个外部类名。 outer.this