- java中的关键字,可作用于类,方法,属性
final修饰属性
-
当属性被用final修饰时,其属性变为只读属性
-
特点
- 1.必须对其赋初始化值,且只能初始化一次
- 2.如果修饰的是基本类型变量,则表示这个变量的值不能改变;如果修饰的是引用类型,则说明这个引用的地址的值不能被修改,但是这个引用所指向的对象里面的内容还是可以改变的
final修饰属性
-
当方法被用final修饰时,代表这个方法不能被重写
-
特点
- 如果父类中final修饰的方法,那么子类不能去重写
- 一个类的private方法会被隐似的指定为final方法
- final方法比非final方法要快,因为在编译的时候已经静态绑定了,不需要在运行时再动态绑定
final修饰类
-
当方法被用final修饰时,代表这个类不能被继承
-
特点
- 当类被final修饰时,内部的成员变量可以根据实际需要设计为final;内部的成员方法会被隐士的指定为final方法
好处
- final关键字提高了性能,JVM会缓存final变量
- final变量可以安全的在多线程环境下进行共享,而不需要额外的同步开销
- 使用final关键字,JVM会对方法,属性以及类进行优化