zoukankan      html  css  js  c++  java
  • Java类的finalize()方法

    Java的Object类提供了一个finalize()方法,签名如下:

    protected void finalize() throws Throwable { }

    该方法在JVM进行垃圾回收时之行,所以任何类都可以Override该方法,来让自己的类的实例在被回收之前,执行一系列动作。

    可以通过如下两种方式来让主动让JVM进行垃圾回收:

    System.gc();
    
    
    Runtime.getRuntime().gc();

    但是JVM不保证立即执行gc操作。

    finalize()方法使用示例如下:

    public class test {
        public static void main(String[] args) {
            //finalize的用法
            A aa = new A();
            try {
                aa.finalize();
            } catch (Throwable e) {
                e.printStackTrace();
            }
            aa = null;
            System.gc();
        }
    }
    class A{
        @Override
        protected void finalize() throws Throwable
        {
            System.out.println("finalize!!!!");
        }
    }
    //output:
    //    finalize!!!!
    //    finalize!!!!
  • 相关阅读:
    帮助智力障碍的可怜儿童
    PE556
    ZJOIDay2T1 BB题解
    CTSC2016游记
    再次被老爸钦点退役
    欧拉筛
    考据
    51nod 1020 逆序排列(动态规划)
    51nod 1186 质数检测(Miller-Rabin算法)
    大整数类模板
  • 原文地址:https://www.cnblogs.com/YLsY/p/5779251.html
Copyright © 2011-2022 走看看