考点介绍:
垃圾回收算法是必考题。GC中的垃圾,指的是存在于内存中的、不会再被使用的对象。而垃圾回收就是把那些不再被使用的对象进行清除,收回占用的内存空间。
答案详情解析和文章内容可扫下方海报二维码或点击链接即可查看!
一、考点试题
1、java中如何判断对象是否是垃圾?
解答:引用计数:在对象中添加一个引用计数器,如果被引用计数器加 1,引用失效时计数器减 1,如果计数器为 0 则被标记为垃圾......
2、下列对JVM垃圾回收的描述,不正确的是()
A.标记清除包含标记对象和清除两次操作,所以执行效率不高
B.复制算法将内存分为两块AB,回收后将A部分所有的存活对象移动到B,将A空闲出来。这种操作解决了碎片的问题
C.标记整理是将对象标记之后,全部存活的对象向一端移动,对额外空间的要求较高
D.分代收集实际中包含的标记清除、复制等算法
解答:正确答案是 C
C是移动算法,不是复制算法,不需要额外空间......
3、如果JVM内触发新生代GC,如果存活对象总量大于survivor区容量,以下说法正确的是()
A.Survivor区域属于新生代。当超出时,可以直接清空Survivor区域,然后重新在Eden区放置对象,也就是所谓的Minor GC
B.发生新生代的Minor GC,将大量连续存储空间的对象会直接分配到老年代
C.发生Minor GC,会影响到永久代(或元数据区)
D.如果对象转移到老年代后,老年代数据也超出,则直接抛弃数据
解答:正确答案是 B
这道题考查的是JVM堆结构里的数据存放和垃圾回收机制,首先要了解堆结构,分为新生代(包含Eden区和两个Survivor区)、老年代和元空间,如图......
4、对象死亡(被回收)前的最后一次挣扎(百度面试题)
解答:通过可达性分析,那些不可达的对象并不是立即被销毁,他们还有被拯救的机会。如果要回收一个不可达的对象,要经历两次标记过程......
5、常用的垃圾回收算法(百度面试题)
解答:1、标记-清除算法
标记-清除算法采用从根集合(GC Roots)进行扫描,对存活的对象进行标记,标记完毕后,再扫描整个空间中未被标记的对象,进行回收,此算法一般没有虚拟机采用。
......
二、考点文章
1、垃圾回收算法与垃圾回收器
Java与C++等语言最大的技术区别:自动化的垃圾回收机制(GC)为什么要了解GC和内存分配策略......
2、几种垃圾回收算法
垃圾回收GC的全拼是 Garbage Collection 其在维基百科的定义是: 在计算机科学中,垃圾回收(英语:Garbage Collection,缩写为GC)是一种自动的内存管理机制。
3、Minor GC ,Full GC 触发条件是什么?
从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC;对老年代GC称为Major GC;而Full GC是对整个堆来说的......
三、考点视频
动态规划之下楼梯的步数方案
动态规则是算法的一种类型,包括转移函数、结束逻辑等,是开发岗校招笔试和面试的大头,必须要掌握。
移动端链接:https://m.xiaozhao.vip/dTopic/detail/1184
PC端链接:https://xiaozhao.vip/dTopic/detail/1184
帖子还没人回复快来抢沙发