示例:
public void foo() {
A a = new A();
}
如果发生以下事件序列会怎样?
- Java 为 A 分配内存。
A()
构造函数运行。现在堆中有一个实例。- GC 运行。
- 在被分配给
a
前,没有对象的引用,所以它被删除。
它如何防止这种情况发生?我非常感谢提供解释的文章链接。
示例:
public void foo() {
A a = new A();
}
如果发生以下事件序列会怎样?
A()
构造函数运行。现在堆中有一个实例。a
前,没有对象的引用,所以它被删除。它如何防止这种情况发生?我非常感谢提供解释的文章链接。
a
中,这样a
就拥有了对它的引用。 - Sotirios Delimanolisa
呢? - Holger