我必须使用现有的应用程序,并且有一个列表存储所有呈现的对象,以便在 gui 更改时删除它们。
这是列表:
private List<Component> registeredComponents = new ArrayList<Component>();
现在我想知道 Java 是否只存储对对象(ZK 组件)的引用,或者它是否存储对象的副本。问题是我是否应该删除它。
最佳答案
该列表将包含仅引用。这适用于所有类型的集合,而不仅仅是 ArrayLists。
在 Java 中,实际上没有办法“掌握”对象本身。当您创建一个新对象时,您得到的只是对它的引用(并且无法通过使用例如 C++ 中的 *
运算符来“取消引用”它)。
关于java - Java 是如何在 List 中存储对象的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6369617/