finalize()方法与system.gc()方法

来源:互联网 发布:ubuntu pdf转word 编辑:程序博客网 时间:2024/04/28 13:34
//此类说明了 finalize 关键字以及 System.gc() 的作用
/*
    finalize 类似 c++中析构函数,表示对象即将消亡时,调用此方法
    gc() 方法表示把拉级回收器启动,把拉圾收走
*/
 
class Person {
     
    private String name;
    private int age;
     
    public Person() {
    }
    public Person(String name) {
        this.name = name;  
    }
    public Person(String name,int age) {
        this(name); 
        this.age = age;
    }
     
    //每个类里面都有finalize方法,和构造方法功能相反,一个是对象产生时调用,一个是对象消亡时调用
    public void finalize() {
         
        System.out.println("开始清理对象...");
    }
     
    public static void main(String[] args) {
        //下面三个对象一产生即成为拉圾
        new Person();
        new Person();
        new Person();
         
        //如果不加上下面这句,以上产生的三个对象虽成为拉圾,但不一定马上就会启用拉圾回收机制把拉圾回收走
        //所以就可能看不到 finalize 方法内部执行的效果
        System.gc();
    }
     
}
0 0