1.
final
在
Java
中的作用
final作为
Java
中的关键字可以用于三个地方。用于修饰类、类属性和类方法。
特征:凡是引用final
关键字的地方皆不可修改!
(1)修饰类:表示该类不能被继承;
举个例子:
people类直接报错。
(2)修饰方法:表示方法不能被重写;
(3)修饰变量:表示变量只能一次赋值以后值不能被修改(常量)。
举个例子:
上面的一段代码中,对变量i和obj的重新赋值都报错了。
2.
final
的用法
被final
修饰的类不可以被继承
被final
修饰的方法不可以被重写
被final
修饰的变量不可以被改变
.
如果修饰引用
,
那么表示引用不可变
,
引用指向的内容可变
.
被final
修饰的方法
,JVM
会尝试将其内联
,
以提高运行效率
被final
修饰的常量
,
在编译阶段会存入常量池中
.
除此之外,
编译器对
final
域要遵守的两个重排序规则更好
:
在构造函数内对一个final
域的写入
,
与随后把这个被构造对象的引用赋值给一个引用变量
,
这两个操作之间
不能重排序 初次读一个包含final
域的对象的引用
,
与随后初次读这个
final
域
,
这两个操作之间不能重排序
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)