/*
普通变量在方法运行结束之后就销毁, 不能访问了
内部类对象在方法结束之后, 有可能还被其他的引用指向, 这时生命周期还在
变量加上 final, 就会始终存在于内存中,这时内部类就可以访问了!
*/
普通变量在方法运行结束之后就销毁, 不能访问了
内部类对象在方法结束之后, 有可能还被其他的引用指向, 这时生命周期还在
变量加上 final, 就会始终存在于内存中,这时内部类就可以访问了!
*/
class Outside { //外部类
public static void main(String[] args) {
final int x = 5;
class Inside { //内部类
public void fun() {
System.out.println(x); //访问外部类方法中的局部变量X
}
}
Inside a = new Inside();
a.fun();
}
}