读书人

请教这里的Outer.this.a 应该怎么理解

发布时间: 2012-01-29 21:39:32 作者: rapoo

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

读书人网 >J2SE开发

热点推荐