主要是为了解决生命周期不一致的问题
对于方法中的局部变量,当方法执行结束后,非final的局部变量就会被销毁。而内部类对局部变量的引用依然存在,如果内部类要调用局部变量时就会出错,加了final,可以确保局部内部类使用的变量与外部的局部变量区分开,解决了生命周期不一致的问题
Java面试题——局部内部类和匿名内部类在访问局部变量的时候,局部变量为什么要加上final关键字
最新推荐文章于 2021-08-03 11:27:07 发布
主要是为了解决生命周期不一致的问题
对于方法中的局部变量,当方法执行结束后,非final的局部变量就会被销毁。而内部类对局部变量的引用依然存在,如果内部类要调用局部变量时就会出错,加了final,可以确保局部内部类使用的变量与外部的局部变量区分开,解决了生命周期不一致的问题