我想让一些数据在我的整个应用程序中轻松可用。我在一个带有静态数据的类中有几个变量,这些变量在几个不同的点被写入和读取。
这在一段时间内运行良好,但现在我希望能够检索到一个 ArrayList,但我得到的只是“null”。
我想知道静态类是否已被发送到“垃圾收集器”。不确定发生了什么,如果您能提供帮助,我们将不胜感激。
最佳答案
您可以尝试使其成为final,然后重新编译代码以查看是否有其他类将引用更改为 null:
public class Global {
public final static List<String> data = new ArrayList<String>();
}
这允许写:
Global.data.add("foo");
但不是:
Global.data = null;
关于java - 何时对具有静态数据的类进行垃圾回收,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1005461/