package Test;
public class test_2 {
public static void main(String[] args) {
// 请在此处调用Inner类中的method方法
Outer1.Inner inner = new Outer1().new Inner();
inner.method();
}
}
class Outer1 {
int num = 10;
class Inner {
int num = 20;
public void method(){
int num = 30;
// ---完善代码---
System.out.println(num); // 输出30
System.out.println(this.num); // 输出20
System.out.println(????); // 输出10
}
}
}
可以使用外层类.this.成员变量的方式来访问外层类的变量。
参考资料:
《Java编程思想》第4版 第10章 内部类 第10.3小节 使用.this和.new (第193页)
public class test_2 {
public static void main(String[] args) {
// 请在此处调用Inner类中的method方法
//// Outer1 o= new Outer1();
//// System.out.println(o);
// Outer1.Inner inner =o.new Inner();
// inner.method();
//
Outer1.Inner inner = new Outer1().new Inner();
inner.method();
}
}
class Outer1 {
int num = 10;
class Inner {
int num = 20;
public void method(){
int num = 30;
// ---完善代码---
System.out.println(num); // 输出30
System.out.println(this.num); // 输出20
System.out.println(Outer1.this.num); // 输出10
}
}
}