日期:2014-05-20  浏览次数:20668 次

请问这里的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;
------解决方案--------------------
内部类可以访问包含它的类的所有成员