0

静态变量存储在哪里?静态变量是否有单独的内存?我知道它们不是对象的一部分,它们也不是 Java 堆的一部分并将 d 存储在某个地方吗?

如果是这样是不是不安全?

4

2 回答 2

4

静态成员是实例化对象的对象的一部分。类对象也是一个对象——它驻留在堆中。记住:所有类都是类的实例Class

于 2013-06-13T19:44:39.677 回答
2

它们存储在PermGemJVM 的一部分中。

static Object var= new Object(); 

var位于 中PermGen,而 Object实例位于 中Heap

编辑:永久代(或PermGen)用于类定义和相关元数据。永久代不是堆的一部分。

于 2013-06-13T19:43:25.690 回答