新人求问一个内部类问题,请求大神帮忙解答
/*
内部类可以存储在局部位置上。
内部类在局部位置上只能访问被final修饰的局部变量。
*/
class Outer
{
int num = 4;
void show()
{
int x = 5;
class Inner
{
void method()
{
System.out.println("method run..."+x);
}
}
Inner i = new Inner();
i.method();
}
}
class InnerClassDemo3
{
public static void main(String[] args)
{
Outer o = new Outer();
o.show();
}
}
我看的是毕向东的视频,讲内部类的时候,局部内部类访问局部变量的时候要用final修饰局部变量,但是我这个写的没有用final来修饰,也可以编译通过,打印的是method run...5
这是什么情况?