public class InnerClassAccessFinalVar {
public static void main(String[] args) {
int i = 42;
// i = 100;
class Inner {
public void test() {
System.out.println(i);
}
}
Inner inner = new</
【专题讨论】为什么Java内部类只能访问final修饰的外部局部变量?
这篇博客探讨了Java内部类只能访问final修饰的外部局部变量的原因,指出这一限制与变量捕获有关。Java在内部类中创建外部变量的副本,确保内部类对变量的修改不会影响外部。作者对这一限制的必要性提出疑问,认为可能是规范说明而非语法限制更为合适。
摘要由CSDN通过智能技术生成