TestGc finalize()
2024-08-29 17:51:49
package com.gc; public class TestGc { public static void main(String[] args) { Man man = new Man("a");
Person a = new Person();
a.setMan(man);
a.setMan(null);
man = null; System.out.println("before gc");
System.gc();
System.out.println("right after gc");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("after gc");
System.out.println(a.getMan() == null? null :a.getMan().getName());
} }
package com.gc; public class Person {
private Man man; public Man getMan() {
return man;
}
public void setMan(Man man) {
this.man = man;
}
}
package com.gc; public class Man { private String name;
public Man(String name) { }
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
} @Override
protected void finalize() throws Throwable {
System.out.println("execute method finalize()"+ name);
super.finalize();
}
}
最新文章
- STL之set
- jquery.idTabs使用方法
- Android图形系统之Surface、SurfaceView、SurfaceHolder及SurfaceHolder.Callback开发实例
- openstack libtray
- SQL-LINQ-Lambda语法对照
- Javascript触屏手势库-JTouch(更新V1.1)
- Linux内存寻址之分段机制
- 利用svg技术实现在线动画演示
- ASPxComboBox控件联动效果bug改进
- crawler_基础之_java.net.HttpURLConnection 访问网络资源
- android学习9——Handler简单用法
- css3 变换 transform(2D)
- centos7新增硬盘
- Docker 容器暂停服务 - 七
- [R] t.test()
- django —— MVT模型
- docker监控
- 【leetcode 简单】 第七十五题 第一个错误的版本
- c#Task类。实现异步的一种方式
- Oracle 检查表的数据变动