如何调用垃圾回收器的方法
System.gc()
或者 Runtime.getRuntime().gc()
gc()
作用
是 提示 Java 虚拟机进行垃圾回收, 该方法被调用之后,由 Java虚拟机自己决定是立即回收还是延迟回收。平时该方法由系统自动调用,不需要人为调用。
public class Person {
public Person() {
System.out.println("person被创建了");
}
public void finalize() {
System.out.println("person对象被回收了");
}
}
未调用GC
// 未调用GC
public static void main(String[] args) {
Person p = new Person();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
p = null;
}
结果:
person被创建了
调用GC
// 调用GC
public static void main(String[] args) {
Person p = new Person();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
p = null;
System.gc();
}
结果:
person被创建了
person对象被回收了
个人对finalize()
的理解
释放对象占用的内存之前会调用该方法,个人理解是给这个对象留遗言的机会,让他死以前可以再做点啥
原文地址:https://blog.csdn.net/weixin_37646636/article/details/136378415
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!