面试题-java中全局变量与局部变量在内存中的区别?

145 阅读1分钟

首先java中无全局变量概念,java中叫成员变量.

  • 局部变量存储在栈中
  • 全局变量(java中无全局变量概念,java中叫成员变量)

成员变量均存储在方法区中,J_VM只是定义了方法这个概念,并没有定义它的具体组成_

1、jdk1.7方法区(习惯上把永久代叫着方法区)

2、jdk1.8方法区(由元数据区+堆组成),其中字符串常量池被放在堆中

jdk1.7的永久代在jdk1.8中去掉并换成元数据区,以上都是针对hotspot虚拟机