java语言基础(47)——成员内部类访问外部类的成员(类名.this范围限定)
内部类访问外部类的成员可以直接访问,但是如果内部类和外部类有同名的成员时我们就要加以区分才可以得到我们想要的结果。
例如:
class Outer
{
public int num = 10;
class Inner
{
public int num = 20;
public void show(){
int num = 30;
// 要求依次输出30 20 10
System.out.println(num);
System.out.println(this.num);
//System.out.println(new Outer().num);
System.out.println(Outer.this.num);
}
}
}
class InnerClassTest
{
public static void main(String[] args){
Outer.Inner oi = new Outer().new Inner();
oi.show();// 输出 30 20 10
}
}
版权声明
本文仅代表作者观点,不代表博信信息网立场。