看看这个问题?成员位置上的变量和方法内部的变量

这里成员位置上的e,s,g,i四个变量名在哪存放?还有这四个变量名对应的数据在哪存放?main方法的变量名和变量名对应的数据各自在哪存放?

只说一个道理吧,其他的你按理推吧 就不一 一分析了:

类成员变量int a=1;

    成员变量 int a = 1, a作为变量名,在JVM中是以代码的形式存在,存放在方法区,当有线程执行到该代码的时候,会加载该代码进行执行,而1作为参数 a 的值在运行时存放在堆内存中,a指向该内存
如果int a=1;作为局部变量

  int a=1为局部变量的时候,这个时候a同样存在方法区的代码中,运行时a存在该方法对应的栈帧的局部变量表中,而该变量表中a的值为1,所以1存在栈内存中。

你问的是JVM里面的位置吗?