这里成员位置上的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里面的位置吗?