黑马程序员技术交流社区
标题:
为什么局部内部类访问局部变量不加final也可以?
[打印本页]
作者:
李大壮
时间:
2014-8-15 18:13
标题:
为什么局部内部类访问局部变量不加final也可以?
class Outer{
void function()
{
int x=4;//方法的局部变量 没有加final也能运行出结果啊
//内部类
class Inner{
//内部类的方法
void add()
{
System.out.print(x+4); //调用外部类方法中的局部变量
}
}
new Inner().add();//创建个内部类的对象
}
}
public class InnerClassDemo {
public static void main(String[] args) {
Outer o=new Outer();//创建外部类对象并将 o的引用指向该变量的地址
o.function();//
}
}
作者:
黑马_java猿
时间:
2014-8-15 21:24
你这是Jdk1.8吧?
1.8默认加了final不用手动加的
你可以试试给x改值试试
应该会报错
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2