java - 为什么 Java 使用堆来分配内存?

标签 java memory heap heap-memory

我刚刚在一本 java 书中读到这个语句,说 java 中的对象驻留在堆上。 使用堆是因为它是存储数据和快速检索数据的最佳方式吗?

对于初学者来说,我只知道数据结构。我的意思是为什么不堆叠或其他什么?

最佳答案

堆栈的问题在于您只能删除最近添加的内容。这对局部变量很有效,因为它们在您进入和退出函数时来来去去,但对于生命周期不遵循单个函数的任意数据来说就不那么好了。内存堆允许您随意添加和删除数据。

关于java - 为什么 Java 使用堆来分配内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2787611/

相关文章:

java - Android测试 "ro.build.date.utc"警告

java - 从外部类非静态构造函数访问内部类的静态方法

memory - 嵌入式/内存LDAP服务器解决方案

java - 最大堆未按预期工作

java - 使用 IDE 运行 Spring-boot 的 main

c - 字节寻址存储器和字寻址

C、函数的变量在完成后会发生什么?

我可以只使用 percolateDown 实现堆吗?

Ruby Heapify 实现/优化

java - Eclipse Java - 将编译器设置为 Java 6 但仍然有 Java 7 方法/库并且没有提示