Java-变量名或标识符存储在哪里,堆栈还是堆?

Java-变量名或标识符存储在哪里,堆栈还是堆?,java,object,variables,heap-memory,stack-memory,Java,Object,Variables,Heap Memory,Stack Memory,标识符或变量名在java中存储在哪里?我知道对象存储在堆中,变量存储在堆或堆栈中,这取决于变量的类型和范围。我们可以调试或编写任何程序来确认它吗 感谢和问候变量名存储在永久生成的方法区域中。对象始终存储在堆中,但对象引用存储在堆栈中。变量名与其他类元数据一起存储在“方法区域”(是permgen的一部分)中 有一个特殊的区域来保存类元数据,称为方法区域。这是permgen的一部分(在java 8之前在堆中),现在它已移动到元空间字段的名称作为类元数据的一部分存储在以前的permgen now元空间

标识符或变量名在java中存储在哪里?我知道对象存储在堆中,变量存储在堆或堆栈中,这取决于变量的类型和范围。我们可以调试或编写任何程序来确认它吗


感谢和问候

变量名存储在永久生成的方法区域中。对象始终存储在堆中,但对象引用存储在堆栈中。

变量名与其他类元数据一起存储在“方法区域”(是permgen的一部分)中


有一个特殊的区域来保存类元数据,称为方法区域。这是permgen的一部分(在java 8之前在堆中),现在它已移动到元空间

字段的名称作为类元数据的一部分存储在以前的permgen now元空间中

数组元素没有名称,只有数字


如果选择了该选项,方法和构造函数参数以及局部变量和处理程序参数的名称仅存储在类文件中的调试符号信息中。JVM不需要它们,因为编译器已将它们映射到字节码中使用的堆栈帧槽号。

你是说类元数据和变量名存储在堆中吗?更新了我的答案@JeetendRachoudhary谢谢你,这个元空间在哪里,真奇怪。这是否重要,我的意思是,它对开发人员是否有用,或者只是知道一些好的事情。@JeetendraChoudhary-Permgen数据已被移动到本机内存空间,这与堆空间不同。我认为OP询问的是“字段名”,而不是字段数据