特点:内部类可以直接访问外部类的成员,包括私有成员。
关键: 如果出现了重名现象,那么格式是:外部类名称.this.外部类成员变量名
public class Outer {
int num = 10; // 外部类的成员变量
public class Inner /*extends Object*/ {
int num = 20; // 内部类的成员变量
public void methodInner() {
int num = 30; // 内部类方法的局部变量
System.out.println(num); // 访问内部类局部变量,直接访问
System.out.println(this.num); // 访问内部类的成员变量,加this。
System.out.println(Outer.this.num); // 访问外部类的成员变量,格式是:外部类名称.this.外部类成员变量名
}
}
}