Java中final, finally, finalize的区别


final,它是一个修饰符,能够用于如下4个地方。对象

1. 定义变量,包括静态变量,非静态变量。当用final定义一个变量时,表示该变量是不可改变的,即常量。继承

2. 定义方法的参数。被final修饰的变量必须初始化,能够在变量定义时或者类的初始化块或者构造器中进行初始化工做。io

3. 定义方法。 当用final定义一个方法时,表示这个方法不能被子类修改,但不影响子类继承它。变量

4. 定义类。 当用final定义一个类时,表示这个类不能被继承,即没有子类。咱们经常使用的String类就是final型的。final定义的类中的全部方法不能被重写,但不表明final类中的属性值是不能改变的。方法

 

finally语句。它其实很简单,它只能用在try/catch语句中,附带一个语句块,表示该语句块中的内容最终老是被执行,不管捕获异常成功与否。

finalize,它是一个方法,是GC(garbage collection)运行机制的一部分。该方法能够告诉GC在清理对象时要完成的一些任务。异常

相关文章
相关标签/搜索