匿名内部类final 为什么内部类访问的外部变量需要使用final修饰?

为什么内部类访问的外部变量需要使用final修饰?方法中的局部变量将在方法结束后释放。Final确保变量始终指向对象。首先,内部阶级和外部阶级处于同一水平。因为内部类是在方法中定义的,所以在方法执行后

为什么内部类访问的外部变量需要使用final修饰?

方法中的局部变量将在方法结束后释放。Final确保变量始终指向对象。首先,内部阶级和外部阶级处于同一水平。因为内部类是在方法中定义的,所以在方法执行后不会销毁跟随者。问题是,如果外部类的方法中的变量没有定义final,那么在执行外部类的方法时,局部变量将是GC。但是,在执行内部类的方法之前,找不到它引用的外部变量。