Java经典面试高频题目---- final finaly finalize区别?
一:Final
-
修饰类:这个类不能被继承 修饰方法: 该方法不能被重写,但是可以被重载 修饰变量
(1):修饰成员变量
-
修饰类变量(静态变量):只能在静态初始化块中指定初始值或者申明该类变量时指定初始值。 修饰成员变量:可以在非静态初始化块中或者在构造器中赋初始值。
(2):修饰局部变量
-
既可以在申明时指定默认值,也可以不指定默认值,在后面对final变量赋初值(只能赋一次)
(3).修饰基本数类型和引用数据类型
-
修饰基本数据类型时,其数值一旦初始化后就不能改变。 修饰引用数据类型时,初始化后便不能让其指向另外一个对象(但是应用的值是可以变化的)
二:Finaly:
-
finaly在try...catch中使用,程序先执行try代码块中的内容,如果不发生异常,执行finaly中代码,但是如果发生异常,则执行catch中的代码,最后再执行finaly中代码。综合以上,finally中的代码无论是否发生异常,都要执行,因此可以做一些释放资源的功能。
三:Finalize
-
finalize,是Object超类中的方法,垃圾回收器中在销毁对象时调用的一个方法,通过重写finalize() 方法可以整理系统资源或者执行其他清理工作。
上一篇:
92天倒计时,蓝桥杯省赛备赛攻略来啦~
下一篇:
【FXCG】降准将会带来哪些影响?