目录
摘要
本节主要记录java关键字final的使用,final关键字是最终的意思,可以修饰类,变量,成员方法。
为什么会有final?由于继承中有一个方法重写的现象,而有时候我们不想让子类去重写父类的方法.这对这种情况java就给我们提供了一个关键字: final,final主要有以下几种用法。
1.final修饰类
final修饰类不能被继承,因此final类的成员方法没有机会被覆盖,默认都是final的。在设计类时候,如果这个类不需要有子类,类的实现细节不允许改变,并且确信这个类不会再被扩展,那么就设计为final类。
2.final修饰方法
不能被子类的方法覆盖,但可以被继承。
3.final修饰变量
被修饰的变量不能被重新赋值,因为这个量其实是一个常量,对于 final关键字修饰局部变量:基本类型,是值不能被改变,引用类型,是地址值不能被改变
4.finally
finally则是Java保证重点代码一定要被执行的一种机制,可以使用 try-finally 或者 try-catch-finally 来进行类似关闭 JDBC连接、保证 unlock 锁等动作。
5.finalize
它的设计目的是保证对象在被垃圾收集前完成特定资源的回收。finalize 机制现在已经不推荐使用,并且在 JDK 9开始被标记为 deprecated。