finalize()方法什么时候被调用?析构函数(finalization)的目的是什么?
2016-03-25 23:50
316 查看
1、finalize()用在当垃圾回收器,因内存紧张,而去回收某些对象时,这时候会去调用其finalize()方法;而如果内存不紧张,就不会去回收对象,那finalize()就不会被调用;
但是呢,考虑到JNI(java native interface),有时候finalize()就可以去回收这部分的内存;
2、Java堆的结构是什么样子的?什么是堆中的永久代(Perm Gen space)?
堆里的内容有:对象和数组等
堆创建的时期:jvm启动的时候
堆中由存活和死亡的对象组成的,其区别主要是在 存活的可以被访问,死亡的虽然还在堆中,但已经不可访问;
但是呢,考虑到JNI(java native interface),有时候finalize()就可以去回收这部分的内存;
2、Java堆的结构是什么样子的?什么是堆中的永久代(Perm Gen space)?
堆里的内容有:对象和数组等
堆创建的时期:jvm启动的时候
堆中由存活和死亡的对象组成的,其区别主要是在 存活的可以被访问,死亡的虽然还在堆中,但已经不可访问;
相关文章推荐
- ZYThumbnailTableView---堪比一个小型阅读App
- xcode7-- 创建pch宏 与安装cocoapods
- C语言实现顺序表
- 练习4:变量
- Android起步之布局(1)LinearLayout
- Android的开源框架Android-Universal-Image-Loader的基本介绍
- JAVA大数据运算系列之大整数相乘
- ubuntu设置开机默认进入字符界面方法
- HDOJ 1241Oil Deposits(BFS)
- Java switch不支持使用字符串对象
- iOS开发调试技巧总结
- onethink安装一直停留在step2的问题
- 《悼》
- 第五节 项目进度管理 项目成本管理
- HTML5 部分标签及其说明
- CSS 入门学习篇 - 1
- Swift默认参数 & 可变参数
- intraweb 11.0.63 for delphi7 破解
- 笔记 3.25
- 被误解的 MVC 和被神化的 MVVM