Java 读书笔记 (十四) Java 方法
2024-10-10 02:46:37
finalize() 方法
finalize() 用来清除回收对象。 //为什么要回收内存?怎样写可以避免内存过多占用?什么时候需要手动回收内存?
protected void finalize()
{
//在这里终结代码
}
关键字protected 是一个限定符,它确保finalize()方法不会被该类以外的代码调用。
Java的内存回收可以由JVM来自动完成。如果手动使用,可以使用上面的方法。
实例:
public class FinalizationDemo {
public static void main(String[]args){
Cake c1=new Cake(1);
Cake c1=new Cake(2);
Cake c1=new Cake(3); c2=c3=null;
System.gc(); //调用Java垃圾收集器
}
} class Cake extends Object{
private int id;
public Cake(int id){
this.id=id;
System.out.println("Cake Object"+id+"is created");
}
protected void finalize() throws java.lang.Throwable{
super.finalize();
System.out.println("Cake Object"+id+"is disposed");
}
} /* 执行以上代码, 输出结果如下:
$ javac FinalizationDemo.java
$ java FinalizationDemo
Cake Object 1is created
Cake Object 2is created
Cake Object 3is created
Cake Object 2is disposed
Cake Object 1is disposed
最新文章
- 错误:The superclass ";javax.servlet.http.HttpServlet"; was not found on the Java Build Path
- 洛谷P2746 [USACO5.3]校园网Network of Schools
- CentOS联网
- JAVA CAS原理深度分析
- POJ 1716 Integer Intervals
- UVA - 10239 The Book-shelver&;#39;s Problem
- 为什么要使用Nginx?
- Unity在安卓的一些路径
- Docker 镜像小结 - 每天5分钟玩转 Docker 容器技术(21)
- 十类经典office实用技巧
- 【mongodb系统学习之五】mongodb启动最常用参数
- visual studio 2010 Error: IntelliSense: identifier ";DWORD"; is undefined
- 【JVM】-NO.116.JVM.1 -【JDK11 HashMap详解-5-红黑树】
- fast.ai(零)windows + pytorch 0.4
- 读取Excel的记录并导入SQL数据库
- 【Android UI设计与开发】第04期:引导界面(四)仿人人网V5.9.2最新版引导界面
- HDU 4585
- Entity Framework底层操作封装V2版本号(2)
- django之设置分页
- CocurrentHashMap和HashTable区别分析