面试题总结——final,finally,finalize的区别
final关键字
1、final用于修饰变量:表示为一个常量,类型和值都不能变化
2、final用于修饰方法:表示该方法不能被覆写
3、final用于修饰类:表示该类不能被继承
4、static final:表示全局常量,所有对象共享的变量,命名规则一般为全大写,在类加载(1.类声明时初始化2.静态代码块)时初始化,效率较高,通过类名调用访问。
finally
用于Java异常体系,和try-catch搭配使用,其中所放的是无论程序是否出现异常都会执行的代码块。
finalize
Object类中的方法,所有Java类都可以调用的方法,表示在进行判断对象是否已死时,当JVM首次调用finalize()方法时,且在finalize()方法中添加该对象的引用,则该对象会起死回生,但该方法只会被调用一次。