final
final关键字是最终的意思,可修饰类,成员变量,成员方法,参数
修饰类:类不能被继承
修饰方法:方法不能被重写
修饰变量:必须初始化,
变量是基本类型:值不能更改
变量是引用类型:内存地址值不能修改
被final修饰的变量必须初始化,初始化的方式有以下几种
在定义的时候初始化
成员变量可以在初始化块中初始化,但不可在静态初始化块中初始化
static final 成员变量可以在静态初始化块中初始化,但不可在初始化块中初始化
在类的构造器中初始化,但static final 成员变量不可在构造函数中初始化
finally
finally是异常处理的一部分,只能用在try/catch语句中,并且附带一个语句块,表示这段语句一定会执行,经常被用在需要释放资源的情况下
finalize
finalize是Object类的一个方法,在垃圾回收器执行时会调用被回收对象的finalize(),可以重写此方法来实现对其他资源的回收。需要注意的是,一旦垃圾回收器准备好释放对象占用的空间,将首先调用其finalize(),并且在下一次垃圾回收动作发生时才会真正回收对象占用内存。