请问这里的Outer.this.a 应该如何理解???
class Outer{
int a=10;
class Inner{
static final int a=100;
void f(){
System.out.println(Inner.a);
System.out.println(Outer.this.a);
}
}
}
public class Member3{
public static void main(String[] args){
Outer out=new Outer();
Outer.Inner in=out.new Inner();
in.f();
}
}
输出:10;
请问这里的在内部类class Inner中调用成员int a;
Outer.this.a 这句话该如何理解???。有点看不明白。。。
------解决方案--------------------Outer.this.a
是调用Outer类的实例的变量a
也就是访问的第二行的那个 int a=10;
------解决方案--------------------内部类可以访问包含它的类的所有成员