欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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 的区别