java里sout语句如何调用外层类的变量呢

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
        }
    }
}

img