本帖最后由 空洞的望着窗外 于 2014-8-29 12:38 编辑
局部变量的作用域问题,局部变量的生命周期跟局部内部类的生命周期不一致,当调用方法时,(局部内部类在方法中),局部变量生命开始,局部内部类生命也开始,而当方法出栈时,(就是结束)局部变量生命结束了,但是内部类对象还可能存在,只有当没有引用该对象时候,才会死亡。而局部内部类的对象无法访问一个已经死亡的(不存在的)局部变量,要怎么做呢?只要确保局部变量的生命周期跟局部内部类的生命周期一样时,需要加final关键字,而static final是全局常量,至于为什么要用final这个词,我也有点晕啊,上午刚看完。 |