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!!!!
  • 相关阅读:
    11.09_近期需要关注和学习的,,,
    11.08_
    11.04_晚
    11.04
    gitlab
    eos开发指南
    谷歌助记词
    solidity语法解读
    parity注记词和地址
    dice2win早期版本
  • 原文地址:https://www.cnblogs.com/YLsY/p/5779251.html
Copyright © 2011-2022 走看看