java - 何时对具有静态数据的类进行垃圾回收

标签 java static garbage-collection

我想让一些数据在我的整个应用程序中轻松可用。我在一个带有静态数据的类中有几个变量,这些变量在几个不同的点被写入和读取。

这在一段时间内运行良好,但现在我希望能够检索到一个 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/

相关文章:

java - 静态类中的列表会生成警告,其他数据类型不会

c# - 在循环图中使用 ThreadLocal<T> 时发生内存泄漏

java - 垃圾收集重载,Java

c# - 是什么阻止对象被处置?/异步流是否使对象保持事件状态?

java - 未收到来自 Java Access Bridge 的回调

c# - 根据代码行从文本文件中获取函数名称

java - 如何检测WLAN?

java - 为什么要在 Java 中使用静态嵌套接口(interface)?

java - Spring SimpleFormController - 在成功 View 中包含搜索表单

java - 与快速更新新行的 JTable 交互