Java是否要求垃圾收集?

时间:2015-11-26 19:33:52

标签: java garbage-collection

JLS / JVMS是否要求垃圾回收?据推测,任何理智的实现都会有垃圾收集,但是疯狂的实现可以作为符合规范的JVM吗?

2 个答案:

答案 0 :(得分:1)

JLS的确切引用是:

  

Java编程语言是一种相对高级的语言,因为通过该语言无法获得机器表示的详细信息。 它包括自动存储管理,通常使用垃圾收集器,以避免显式释放的安全问题

答案 1 :(得分:1)

规范要求垃圾收集。

引用JVM规范," Heap":

  

Java虚拟机有一个,它在所有Java虚拟机线程之间共享。堆是运行时数据区,从中分配所有类实例和数组的内存。

     

在虚拟机启动时创建堆。对象的堆存储由自动存储管理系统(称为垃圾收集器回收;对象永远不会被显式释放。 Java虚拟机假定没有特定类型的自动存储管理系统,并且可以根据实现者的系统要求来选择存储管理技术。堆可以具有固定大小,或者可以根据计算的需要进行扩展,并且如果不需要更大的堆,则可以收缩。堆的内存不需要是连续的。