京东 北京 java 中级: 哪些情况下的对象会被垃圾回收机制处理掉? 哪些对象可以被看做是 GC Roots 呢?对象不可达,一定会被垃圾收集器回收么?

        我同学最近在面试java的岗位, 这是他遇到的某些关于java的JVM中垃圾回收相关的部分的问题, 他来问我, 我特以此文章来解答.

公司  京东

base  北京

面试时间  2024年10月23日16:00:00



        他跟我说, 面试官一上来就问了一个关于JVM的问题, 直接就给他难住了, 问题是 :

 哪些情况下的对象会被垃圾回收机制处理掉? 

  • 我同学:  额 .. 这个我不太清楚, 应该是没有对象引用这个对象的时候, 就会被清理掉吧. 
  • 面试官:  确实如此, 但是我怎么知道 某个对象是否被其他对象引用
  • 我同学:  这个我知道(很自信), 使用的是可达性分析法, 如果一个对象存在与GCRoots的  某个节点的引用链中, 那么这个对象就不会被清理. 
  • 面试官: 那么有哪些可以作为GCRoot呢? 
  • 我同学:  吧唧吧唧(只答了几点, 没答全)
  • 面试官:  那一个对象如果不存在关联的引用链, 那么是否会被清除? 
  • 我同学:  这个不太清楚.... 

         其实, 你也知道, 这就是想问, 哪些对象会在下一次GC的时候, 被垃圾回收器回收掉. 本问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值