public void computer(){ //一个方法对应一个栈桢
int i=0;
}
//执行Main方法的时候,main会有一个主线程,线程当中有栈
//main方法会在Main线程当中开辟一块内存空间 被称之为 栈空间
public static void main(String[]args){
Test t=new Test();
t.computer();
}
什么是栈?栈其实可以称之为线程栈,在线程执行的时候在虚拟机当中开辟一块内存模型,内存模型当中包含了栈。在Java执行方法的时候会在栈当中开辟一块内存区域 存放临时变量。
FIFO的数据结构
什么是栈桢?在执行不同的Java方法的时候,会再次在单独的内存区域当中开辟一块空间。这块空间称之为栈帧。
栈和堆的联系
堆中存放对象,栈当中存放的临时变量,临时变量可能也会有对象,临时变量存放在栈中,所以栈中的对象指向了堆。
什么是方法区?
存放常量+静态变量+类元信息(java字节码转换成类元信息)
jvisualvm
查看内存的信息