【问题标题】:If I set a new object to a variable that already had an other object, what happens to the old object? [duplicate]如果我将一个新对象设置为一个已经有另一个对象的变量,那么旧对象会发生什么? [复制]
【发布时间】:2017-04-26 18:58:33
【问题描述】:

我想知道当之前指向它们的变量现在指向另一个对象时旧对象会发生什么。他们是被删除了还是怎么了?

classA var = new classA();
var = new classB();

当变量“var”设置为对象“classB”时,对象“classA”(在变量“var”中创建)是否被删除?

【问题讨论】:

  • 很抱歉,在你告诉我之前我不知道“垃圾收集”。我搜索了我的问题,但找不到任何明确的答案。

标签: java variables object memory


【解决方案1】:

当对一个对象的所有引用不再存在时,它就有资格作为垃圾被删除。迟早,垃圾收集器会从内存中删除这个对象。但是,如果有足够的内存,“稍后”可能根本不会发生:无法保证。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-12
    • 1970-01-01
    • 2016-10-24
    • 2016-08-26
    • 2020-11-15
    • 1970-01-01
    相关资源
    最近更新 更多