Java 简述 final, finally, finalize 的区别
程序员文章站
2024-01-20 17:00:16
...
final
: 是一个关键字, 用于定义不能够被继承的父类, 不能被覆写的方法, 变量;finally
: 是 try … catch 异常处理的统一出口;finalize
: 是 Object 类的一个静态方法, 使用该方法用于在对象回收前的一个调用, 在覆写finalize()的方法中的异常不会阻断其他程序的执行,如下案例, (即真正的与我无关,我也不管)。
package com.cwq.beyond;
class Person{
public Person() {
System.out.println("呜呜呜, 出生了.");
}
@Override
protected void finalize() throws Throwable {
System.out.println("我下地狱了,下辈子不做人了~");
System.out.println(50/0);
throw new Exception("我还要再活500年");
}
}
public class TestDemo {
public static void main(String[] args) throws Exception {
Person person = new Person();
person = null;
System.gc();
System.out.println("我不想下地狱了~");
}
}
推荐阅读
-
Java 简述 final, finally, finalize 的区别
-
Java修饰符 abstract,static,final 的区别详解
-
java final 和instanceof 关键字的区别
-
浅析final,finally,finalize 的区别
-
Java修饰符 abstract,static,final 的区别详解
-
java final 和instanceof 关键字的区别
-
Android源码中final关键字的用法及final,finally,finalize的区别
-
浅析final,finally,finalize 的区别
-
java中final与finally的使用介绍
-
Android源码中final关键字的用法及final,finally,finalize的区别