Final关键字可以修饰类,方法,变量
修饰类:当final修饰一个类的时候,表示这个类不能被继承。注意:a.被final修饰的类,final类中的成员变量可以根据自己的实际需求设计为final b.final类中的成员方法都会被隐式的指定为final方法。说明:如果一个类永远不会让他被继承,就可以用final进行修饰。在jdk中,被设计为final类的有String,System
修饰方法:被final修饰的方法不能被重写。注:a.一个类的private方法会被隐式的指定为final方法。B.如果父类中有final修饰的方法,那么子类不能被重写。
在Java编程思想中介绍:使用final的方法的原因有两个。第一个原因是把方法锁定,以防任何继承类修改它的含义:第二个原因是效率,在早期的java实现版本中,会将final方法转为内嵌调用、但如果方法过于庞大,可能看不到任何内嵌带来的性能提升,在最近的Java版本中,不需要使用final方法进行这些优化
注:类的private方法会被隐式的指定为final方法
修饰变量:
- 1.必须初始化值
- 2.被final修饰的成员变量赋值,有两种方式:a.直接赋值 b.全部在构造方法中赋初值。
- 3.如果修饰的成员变量是基本类型,则表示这个变量的值不能改变。
- 4.如果修饰的成员变量是一个引用类型,则说明这个引用的地址的值不能修改,但是这个引用所指向的对象里面的内容还是可以改变的。