java - 将 Collection 对象设为 NULL 好不好?

标签 java collections

在我的代码中的某个时刻,我想使 Collection 对象无效。这样做会不会造成内存泄漏?

  Set<String> set = new HashSet<String>("Test");
  ...
  ...
  set = null;
  if(set == null){
     ... 
  }

最佳答案

您不会使对象无效,而是将变量的值更改为null。了解对象、变量和引用之间的区别非常非常重要。

这很少有用,但导致变量泄漏本身就非常奇怪。我无法立即想到这是如何发生的 - 当然,除非您进行了一些无效检查,这改变了您对其他数据的行为。它可能使前一个变量值引用的集合符合垃圾回收的条件,也可能不符合垃圾回收的条件 - 这取决于其他任何东西是否仍然引用它。

关于java - 将 Collection 对象设为 NULL 好不好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22721654/

相关文章:

java - java内部类的排序 vector

java - 如何使用通配符遍历这个通用列表?

java - GWT 中初始化不同的列表?

c# - 如何保留列表的最新 X 元素

java - 使用流式 api 遍历字段而不是遍历对象

java - 由于包名不同,APK 上传到 Google Play 失败

java - 向上转换 java RTTI

java - 如何使用 Graph API 获取未读消息?

java - 如何等待 Intent 服务完成 - 当 Intent 服务从 AsyncTask 启动时

java - 找到第一个匹配的条目并将匹配的条目值分配给变量