1. final
final是类修饰符。只有类和方法可以用final来修饰,成员属性不可以final修饰。
当类被修饰为final时,这个类不能被继承;
当一个方法被修饰为final时,这个方法不可以被重写。
2.finally
finally 异常处理的一部分,它只能用在try/catch语句中。除了以下2种情况外,不管是否 出现异常,finally语句块中的代码最后一定被执行。
①程序未进入try{}块的执行,如在try之前出现运行时异常,程序终止。
②程序进入到try{}和catch{}块的执行,但是在try{}或者catch{}块碰到了System.exit(0)语句,jvm直接退出,finally{}块不会执行(当try和catch中有return时,finally仍然会执行)。
3.finalize();
当某个类重载finalize()方法后,该类的实例对象在没被引用而被GC清理时会执行finalize()方法。
虚拟机会把要执行finalize的对象放在一个F-Queue队列,会创建一个低优先的线程Finalizer去执行finalize()方法,但不保证这个方法会执行完,因为finalize()方法可能会执行缓慢,或者发生死循环导致内存无法回收