1、finalize()用在当垃圾回收器,因内存紧张,而去回收某些对象时,这时候会去调用其finalize()方法;而如果内存不紧张,就不会去回收对象,那finalize()就不会被调用;
但是呢,考虑到JNI(java native interface),有时候finalize()就可以去回收这部分的内存;
2、Java堆的结构是什么样子的?什么是堆中的永久代(Perm Gen space)?
堆里的内容有:对象和数组等
堆创建的时期:jvm启动的时候
堆中由存活和死亡的对象组成的,其区别主要是在 存活的可以被访问,死亡的虽然还在堆中,但已经不可访问;