包含对对象的引用的 Java 数组

标签 java arrays reference

我有 EMP 类的对象 e。我将它添加到数组并将 e 的引用设为 null。

Emp e = new Emp();
Emp[] lst = new Emp[10];
lst[0] = e;
e = null; 
System.out.println("Emp object = "+l[0]);

我所知道的是数组 lst 不包含实际的 empolyee 对象,而是对 employee 对象的引用。因此,如果我将引用 e 设为 null 那么我们如何仍然能够使用 lst[0] 访问该对象。

最佳答案

e 也是一个对象的引用,或者更准确地说:一个持有引用的变量。

因此您有两个 引用指向同一个对象。您仅“取消”第一个。真正的对象仍然存在,并且因为它仍然通过那个数组被引用,所以它也不会被垃圾收集器收集。

这就是全部。

关于包含对对象的引用的 Java 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53708960/

相关文章:

java - Primefaces 消息也不适用于流文件

php - 从数组中去除出现次数少于两次的所有元素

c++ - 在 C++ 中修改单个字符串元素

c# - 引用类型的非初始化与空值

java - Eclipse 插件授权错误

java - 时区更新程序不起作用

recursion - 使用可变引用对app_state进行递归更新更新

c++ - 临时绑定(bind)到聚合初始化结构成员的生命周期

java - 并发迭代一个HashMap对象是线程安全的吗?

c++ - 嵌入数据的多种类型