对于final修饰的基本类型和String类型,编译器会认为它是稳定态,在编译时就直接把值编译到字节码中,避免运行期引用,提高代码的执行效率;但是修改常量值后,需要重新编译;
对于final修饰的类(非基本类型),编译器认为它是不稳定态,在编译时建立的是引用关系,如果一个类引入的常量是一个类或实例,即使不重新编译也会输出最新值。
对于final修饰的基本类型和String类型,编译器会认为它是稳定态,在编译时就直接把值编译到字节码中,避免运行期引用,提高代码的执行效率;但是修改常量值后,需要重新编译;
对于final修饰的类(非基本类型),编译器认为它是不稳定态,在编译时建立的是引用关系,如果一个类引入的常量是一个类或实例,即使不重新编译也会输出最新值。
转载于:https://my.oschina.net/u/3488841/blog/1600395