java,堆和栈是怎么分工的?就是说分别用来存放什么

发布网友 发布时间:2022-02-28 14:47

我来回答

3个回答

热心网友 时间:2022-02-28 16:16

两种不同的内存结构
栈: 存放基本数据类型、对象的引用
堆:存放对象的数据

热心网友 时间:2022-02-28 17:34

Java把内存划分成两种:一种是栈内存,一种是堆内存。
在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存 中分配。
当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放 掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。
堆内存用来存放由new创建的对象和数组。
在堆中分配的内存,由Java虚拟机的自动垃圾回收器来管理。

这里有参考资料,楼主也要谢谢这个空间的人,呵呵...

参考资料:http://hi.baidu.com/%CB%BC%C3%F4%D3%EA/blog/item/3933affbba8b7cd4b58f316f.html

热心网友 时间:2022-02-28 19:09

这些知识在《Think in java》中有很详细的描述说明, 贾府焦大的回答还是比较中肯。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com