在局部内部类的方法中如果调用局部内部类所声明的方法中的局部变量,要求此局部变量声明为final
public class InnerClassTest {
public void method(){
int num = 10;
class AA{
public void show(){
num = 20;
System.out.println(num);
}
}
}
}
提示要求我们把num转成一个final数组,这里我们在定义num前面加一个final就行
在jdk7及之前版本:要求此局部变量显示的声明为final的
在jdk8及之后的版本:可以省略final的声明