临时想到这种:- class Outer{
- private int num = 10;
- public void function(final int num){
- final int finalLocalNum=num;//function中的final修饰的number可以直接被Inner中的
- class Inner{ //方法访问,但是你show的形参也是num,它访问的是show中的num
- //那么通过折中的方法再定义一个变量区别num
- private int num = 20;
-
- public void show(int num){
- System.out.println("num = " + num);//30
- System.out.println("finalLocalNum = " +finalLocalNum);//取到final int num的值
- //让我回顾一下
- System.out.println("Inner's num = " + this.num);//20 访问Inner成员变量
- System.out.println("Outer's num= "+Outer.this.num);//10 Outer成员变量
- }
- }
- new Inner().show(30);
- }
-
- }
- class Test{
- public static void main(String[] args){
-
- new Outer().function(50);
- }
- }
复制代码 建议不要搞这么多同名变量,后期再用时自己都分不清了,自找麻烦- -~~ |