堆:一般new出来的对象都存在堆中
方法区:又叫元空间。一般存放常量+静态变量+类信息(类加载信息)
栈(线程):每个线程都有自己的一个栈内存空间
一个线程一个栈,共享堆和方法区
栈(线程)简介:
public static void main(String[] args){
方法B()
}
一个线程一个线程栈,主线程开始后,先将main()方法压栈,然后执行到B再将B方法压栈
方法栈帧:存放方法中定义的局部变量和其他使用的变量引用。
因此,会发生同步问题的只有实例变量和静态变量,局部变量不在线程间共享