1:java产生垃圾回收的意义。
在C++中,对象所占用的内存在程序运行之前一直被占用,在明确释放之前不能分配给其他对象;而在java中,当没有对象的引用指向原来分配的对象内存时,该内存便成为垃圾。jvm的一个系统线程将负责处理这些没有引用的对象并且释放内存。
当然,既然jvm要监听没有引用的对象,所以在性能方面,java要低于C++。在不断完善的垃圾回收机制算法上已经软硬件运行效率的不断提升,这些问题都可以迎刃而解。
2:垃圾收集的算法分析。
java语言规范没有明确地说明jvm使用哪种垃圾回收算法,当时任何一种垃圾回收算法一般情况下要做两件事情。
第一:发现无用的信息对象。第二;回收被无用对象占用的内存空间。