JVM这块大厂是越来越在乎。具体的项目不说了,但他现在招新人必问JVM,无论对方有没有在简历上写熟悉JVM这块。看看小白同学的一个聊天就能感觉出来!
作为 Java 的从业者,在找工作的时候,一定会被问及关于 JVM 相关的知识。 JVM 知识的掌握程度,在很多面试官眼里是候选人技术深度的一个重要评判标准。 本文将重点介绍面试过程中高频常见的 JVM 题目。 将面试题分为三大类:基础题目,进阶题目,实战题目。并给出标准答案, 提供给大家学习参考。
JVM基础高频问题
- JDK、 JRE、JVM 的关系是什么?
- JVM 的内存模型以及分区情况和作用
- JVM 对象创建步骤流程是什么?
- 垃圾回收算法有几种类型? 他们对应的优缺点又是什么?
- 类的加载过程是什么?简单描述一下每个步骤
- JVM 预定义的类加载器有哪几种?分别什么作用?
- 什么是双亲委派模式?有什么作用?
- 介绍一下 JVM 中垃圾收集器有哪些? 他们特点分别是什么?
- 什么是 Class 文件? Class 文件主要的信息结构有哪些?
- 对象“对象已死” 是什么概念?
JVM进阶高频问题
- JVM 数据运行区,哪些会造成 OOM 的情况?
- 除了数据运行区,其他区域均有可能造成 OOM 的情况。
- Java 语言怎么实现跨平台的?
- 详细介绍一下对象在分带内存区域的分配过程?
- G1 与 CMS 两个垃圾收集器的对比
- 线上常用的 JVM 参数有哪些?
- 对象什么时候进入老年代?
- 什么是内存溢出, 内存泄露? 他们的区别是什么?
- 引起类加载操作的行为有哪些?
- 介绍一下 JVM 提供的常用工具
- Full GC 、 Major GC 、Minor GC 之间区别?
- 什么时候触发 Full GC ?
- 什么情况下会出现栈溢出
- 说一下强引用、软引用、弱引用、虚引用以及他们之间和 gc 的关系
- Eden 和 Survivor 的比例分配是什么情况?为什么?
JVM实战问题
- CPU 资源占用过高
- OOM 异常排查
总结
注:为了不影响阅读,我已经把解析整理成pdf免费分享出来,有需要的朋友“加我vx小助手即可免费领取”
“做程序员,圈子和学习最重要”因为有有了圈子可以让你少走弯路,扩宽人脉,扩展思路,学习他人的一些经验及学习方法!同时在这分享一下整理的JVM及性能优化学习笔记文档和JVM学习视频免费分享给大家!
JVM与性能优化学习笔记pdf
内容分为5大模块:
- JVM内存区域划分
- JVM执行子系统
- 垃圾回收器和内存分配策略
- 编写高效优雅Java程序
- 性能优化
JVM面试问题解析视频
Java后端面试专题文档
Java后端面试高频题视频讲解