使用final关键字时需要注意以下几个问题:
(推荐教程:java入门教程)
1、被final修饰的类不可以被继承;
2、被final修饰的方法不可以被重写;
3、被final修饰的变量不可以被改变,如果修饰引用,那么表示引用不可变,引用指向的内容可变;
4、被final修饰的方法JVM会尝试将其内联,以提高运行效率;
5、被final修饰的常量在编译阶段会存入常量池中;
(视频教程推荐:java视频教程)
在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用变量,这两个操作之间不能重排序。
初次读一个包含final域的对象的引用,与随后初次读这个final域,这两个操作之间不能重排序。