校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > java语言 > 垃圾回收算法
题目

如果JVM内触发新生代GC,如果存活对象总量大于survivor区容量,以下说法正确的是()

A.Survivor区域属于新生代。当超出时,可以直接清空Survivor区域,然后重新在Eden区放置对象,也就是所谓的Minor GC

B.发生新生代的Minor GC,将大量连续存储空间的对象会直接分配到老年代

C.发生Minor GC,会影响到永久代(或元数据区)

D.如果对象转移到老年代后,老年代数据也超出,则直接抛弃数据

解答

正确答案是 B

这道题考查的是JVM堆结构里的数据存放和垃圾回收机制

首先要了解堆结构,分为新生代(包含Eden区和两个Survivor区)、老年代元空间,如图

A的错误在于不会直接清空Survivor区域,而是整理空间,大对象提升到年老代

B是正确的

C的错误是Minor GC只是在新生代内部或者新生代和老年代之间发生的回收,如果超出老年代就是Major GC

C 0条回复 评论

帖子还没人回复快来抢沙发