aMo*_*oly 5 java static memory-management final
我知道一个类的静态方法和非静态方法都存储在方法区中。
但我真的很怀疑Java在哪里存储对象的最终变量(常量)成员和静态变量成员。
例如,
class A{
private final int a = 1;
private static int b = 2;
private static final int c = 3;
//other codes...
}
Run Code Online (Sandbox Code Playgroud)
我想知道Java将a、b、c存储在内存中的哪里。堆、栈还是方法区?
======更新=====
嘿,感谢您的帮助。请允许我分享一个有关 jvm 组件的链接:http://www.artima.com/insidejvm/ed2/jvm2.html
在 Java 虚拟机实例内部,有关加载类型的信息存储在称为method area.Memory 的内存逻辑区域中,类中声明的类(静态)变量取自方法区域。
所有实例变量都将存储在 中heap area,包括最终成员。
| 归档时间: |
|
| 查看次数: |
2847 次 |
| 最近记录: |