Wikipedia on Heap列出了许多堆的实现。我在想Java对堆使用什么实现?
是由 JVM 供应商决定还是在 JVM 规范中指定应该使用什么实现?
Wikipedia on Heap列出了许多堆的实现。我在想Java对堆使用什么实现?
是由 JVM 供应商决定还是在 JVM 规范中指定应该使用什么实现?
他们都没有。您引用的 Wiki 条目中的堆是基于二叉树的排序数据结构。JVM 使用的堆是动态内存区域。Wiki 类型由 java.util.Heap 实现,而不是由 JVM 的堆实现。我知道这很令人困惑,但它确实存在。请注意,Wiki 条目的顶部有一个消除歧义的注释。
堆类型是 JVM 实现者的决定。关于堆的JVM 规范没有说明所需或首选的堆类型。