final修饰属性或者变量,变量被初始化后就不能修改。一般情况下我们可以在声明final变量时初始化它,但是,也可以声明一个空的final变量,然后在构造方法中初始化(体会两种方式在类中的差别)。空的final变量常用于创建不可变对象。;
(https://www.geeksforgeeks.org/blank-final-in-java/)
finally:
常用在异常处理机制中,它保证了finally语句块总是被执行,用来回收资源。
inally块将在try和catch块之后执行,在控制权转移回其原处之前执行。
finalize:
在Object类中定义的 protected void finalize() throws Throwable;
如果一个对象可以进行垃圾回收了(没有任何指向这个对象的引用变量了),那么垃圾回收器在销毁这个对象前,会自动调用它的finalize()方法进行资源回收。方法结束后,对象立即被销毁。
(https://www.geeksforgeeks.org/g-fact-24-finalfinally-and-finalize-in-java/)
16、序列化的方式