出于安全考虑,类无法被继承
防止继承类修改方法
private方法会隐式指定为final方法;
基本数据类型,初始化后不能再修改;
引用类型,不能改变引用指向;
public void test(final int b) { final int a = 10; new Thread( new Runnable() { @Override public void run() { System.out.println(b); System.out.println(a); } }, "T1") .start(); }
局部内部类访问的局部变量在编译时,对于已经明确赋值拷贝到局部内部类,变成其局部变量;如果内部类中修改了该变量,就无法保证数据一致性。添加final关键字,可以防止内部类修改;
Java 8中不加final关键字,编译不会报错,但在内部类中修改变量,编译会报错。
原文:https://www.cnblogs.com/gudujian/p/12813821.html