- class Outer
- {
- private int num = 3;
-
- void method()
- {
- final int x = 7;//内部类定义在局部中,只能访问被final修饰的局部变量。
- //不被final修饰的局部变量生命周期随着方法的释放而释放。
- class Inner//定义在局部的内部类。
- {
- void show()
- {
- System.out.println("x="+x);
- // System.out.println("num="+num);
- }
- }
- new Inner().show();
- }
- }
- class InnerDemo3
- {
- public static void main(String[] args)
- {
- // new Outer().method();
- Outer2 out = new Outer2();
- out.method();
- System.out.println(out.obj.toString());
- }
- }
复制代码
看老毕讲着段几遍了,上面有两行注释的内容,局部内部类只能访问被final修饰的变量。
我想问的是,当局部类访问到该方法时,该方法及时已经被释放,能不能再重新加载? |