我想知道下面的代码是否是内存泄漏,因为谷歌只是出现了奇怪的例子。基本上,如果我有课Tree
:
public class Tree{
private Bird[] birds;
public Tree(){
birds = new Bird[100];
}
}
我持有一个Tree
这样的类引用:
Tree myTree = new Tree();
然后不久之后我将该引用设置为null
:
myTree = null;
垃圾收集器会用树类处理所有 100 个分配的鸟吗?还是我需要一种delete()
方法?我知道 Java 没有析构函数,但这个多层类示例仍然让我感到困惑:
里面Tree.java
:
public void deleteBirds{
birds = null;
}