1.final修饰的类不可以被继承
2.final修饰的变量不能二次赋值(即值不能被改变),并且只能在初始化时被赋值
3.final修饰方法不能被重写
4.final修饰的对象引用不能改变,值可以变(可以看下LinkedList源代码)
5.final和abstract这两个关键字是反相关的,final类就不可能是abstract的
6.final关键字容易与finalize()方法搞混,后者是在Object类中定义的方法,是在垃圾回收之前被JVM调用的方法。
7.final关键字不同于finally关键字,后者用于异常处理。
8.将类、方法、变量用final修饰能够提高性能。
9.final变量就是常量,而且通常常量名要大写。
10.final变量是用来保证对象的安全发布,防止对象引用被其他线程在对象被完全构造完成前拿到并使用。