final 关键字
final 关键字主要用于修饰类,变量,方法。
1. 类:被 final 修饰的类不可以被继承。
2. 方法:被 final 修饰的方法不可以被重写。
3. 变量:被 final 修饰的变量是基本类型,变量的数值不能改变;被修饰的变量是引用类型,变量不能再引用其他对象,但是变量所引用的对象本身是可以改变的。
final finally finalize 区别
finally 作为异常处理的一部分,它只能在 try/catch 语句中,并且附带一个语句块表示这段语句最终一定被执行(无论是否抛出异常),经常被用在需要释放资源的情况下。System.exit (0) 可以阻断 finally 执行。
finalize 是在 java.lang.Object 里定义的方法,也就是说每一个对象都有这么个方法,这个方法在 gc 启动,该对象被回收的时候调用。
一个对象的 finalize 方法只会被调用一次,finalize 被调用不一定会立即回收该对象,所以有可能调用 finalize 后,该对象又不需要被回收了,然后到了真正要被回收的时候,因为前面调用过一次,所以不会再次调用 finalize,进而产生问题,因此不推荐使用 finalize 方法。