1. 每个程序运行时都有属于自己的一段内存空间,参数调用,函数调用。这段空间叫stack(栈)
2.所有应用都可以从一个系统共用的空间中申请自己需要的内存。这个空间叫heap(堆)
3. JVM自动管理stack和heap不能直接设置stack和heap。
4. stack的存取速度比heap要快
5. 在Java中,基本数据类型,Java指令代码,常量都保存在stack中。
6. new一个新对象时,会在heap中分配一定的内存来保存对象实例(只保存属性值,不保存方法,方法属于指令,保存在stack中)
对象实例在heap中分配好以后,会在stack中保存一个4个字节的heap内存地址(类似于指针地址)。
时间: 2024-10-10 05:27:58