final
关键字主要⽤在三个地⽅:变量、⽅法、类。
- 对于⼀个
final
变量,如果是基本数据类型的变量,则其数值⼀旦在初始化之后便不能更改;如果是引⽤类型的变量,则在对其初始化之后便不能再让其指向另⼀个对象。 - 当⽤
final
修饰⼀个类时,表明这个类不能被继承。final
类中的所有成员⽅法都会被隐式地指定为final
⽅法。 - 使⽤
final
⽅法的原因有两个。第⼀个原因是把⽅法锁定,以防任何继承类修改它的含义;第⼆个原因是效率。在早期的Java
实现版本中,会将final
⽅法转为内嵌调⽤。但是如果⽅法过于庞⼤,可能看不到内嵌调⽤带来的任何性能提升(现在的 Java 版本已经不需要使⽤final
⽅法进⾏这些优化了)。类中所有的private
⽅法都隐式地指定为final
。
留言