在Java运行程序是会把他管理的数据进行分区
下面我就带大家了解一下吧!
1、栈
Java里栈的区域是很小的,只有1M左右,但是他的特点就是存取速度很快,所以在stack中存放的都是快速执行的任务。基本都是放常用变量和对象的引用。
创建程序时,Java编译器必须准确的知道推栈内存有的所有数据的“长度”以及“存在时间”。这是由于它必须生成相应的代码,以便向上和向下移动指针。
驻留于常规随机访问存储器区域。它可通过他的“栈指针”获取处理和支持。指针向下移,会创建新的内存;要是向下移,就会释放内存。
栈是存放线程调用方法时存储局部变量表,操作,方法出口等与方法执行相关的信息,
Java栈所占内存的大小由Xss来调节,方法调用层次太多会撑爆这个区域。
Nativemethodstack(本地方法栈):保存native方法进入区域的地址。