阐述 final、finally、finalize 的区别?

final:修饰符(关键字)有三种用法:如果一个类被声明为 final,意味

着它不能再派生出新的子类,即不能被继承,因此它和 abstract 是反义词。将

变量声明为 final,可以保证它们在使用中不被改变,被声明为 final 的变量必须

在声明时给定初值,而在以后的引用中只能读取不可修改。被声明为 final 的方

法也同样只能使用,不能在子类中被重写。 259 页 共 485 页

finally:通常放在 try…catch…的后面构造总是执行代码块,这就意味着

程序无论正常执行还是发生异常,这里的代码只要 JVM 不关闭都能执行,可以

将释放外部资源的代码写在 finally 块中。

finalize:Object 类中定义的方法,Java 中允许使用 finalize()方法在垃

圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收

集器在销毁对象时调用的,通过重写 finalize()方法可以整理系统资源或者执行

其他清理工作。

原文地址:https://www.cnblogs.com/programb/p/13021360.html