如果我重新实例化一个静态类,之前分配的内存会发生什么?
static
。嵌套static
类的实例的行为与任何其他类的实例相同:
如果您实际上是在询问一个static
引用:
public static Object obj = object1;
public static void main(String[] args) {
obj = object2;
}
它们的行为与任何其他引用一样。
在上面的代码中,一旦你将obj
重新赋值为指向object2
,这可能会使object1
有资格进行垃圾回收,也可能不会,这完全取决于是否存在对它的存活引用。