我们初始化我们的 main object,并在其构造函数中创建一个新的 object。当我们销毁 main object 时,它的创建会发生什么?
We initialize our main object, and it creates a new object in its constructor. When we destroy the main object, what happens to its creation?
我认为标题很具体,但这里有一些代码来举例说明问题。另外,我意识到聚合将是这个特定示例的正确选择,也许这个问题本身就带有 OOP 的味道;然而,虽然我对 OOP 很感兴趣,但我更感兴趣的是 Java 如何处理 object 销毁。
public class SuperMarket
{
private Cashier mCashier;
public SuperMarket(...)
{
this.mCashier = new Cashier(...);
}
}
和运行.
listSuperMarkets.add(new SuperMarket(...));
这里发生了什么,没有其他引用存在(这可能无关紧要,写这篇文章时不确定):
listSuperMarkets.remove(0);
正如@tkausl 提到的,垃圾收集器将删除该对象,但更具体地说,您的对象将存在于堆中,直到垃圾收集器将其删除。
我认为标题很具体,但这里有一些代码来举例说明问题。另外,我意识到聚合将是这个特定示例的正确选择,也许这个问题本身就带有 OOP 的味道;然而,虽然我对 OOP 很感兴趣,但我更感兴趣的是 Java 如何处理 object 销毁。
public class SuperMarket
{
private Cashier mCashier;
public SuperMarket(...)
{
this.mCashier = new Cashier(...);
}
}
和运行.
listSuperMarkets.add(new SuperMarket(...));
这里发生了什么,没有其他引用存在(这可能无关紧要,写这篇文章时不确定):
listSuperMarkets.remove(0);
正如@tkausl 提到的,垃圾收集器将删除该对象,但更具体地说,您的对象将存在于堆中,直到垃圾收集器将其删除。