Java内存分配 变量存储位置和Jvm的内存模型
Java内存分配
一 栈
1)需要知道存储项的 生命周期 和 需要在栈中分配多少空间 ,以便上下移动指针 ,指针向上移是释放空间,向下是分配内存空间。
2)其存放局部变量
二 堆
1)与栈不同的是编译器不需要知道需要给存储项从堆中分配多少空间,也不知道存储项生命周期
2)其存放 数组 和 对象
三 寄存器
最快的存储器
四 常量池
存放常量
五 静态域
六 非RAM区域
Jvm内存模型
一 堆
二 栈
三 方法区
四 本地方法栈
五 程序计数器
栈和堆的不同
1 数据不同
2 初始值不同
3 生命周期不同
以后有机会补充
参考资料:
[link](https://www.cnblogs.com/caogang/p/4376611.html