写点什么

拿下大厂?这几道 jvm 面试题必须要懂

作者:钟奕礼
  • 2022-11-19
    湖南
  • 本文字数:1383 字

    阅读完需:约 5 分钟

目录


1、 什么是 JVM?

1.1 请问 JDK 与 JVM 有什么区别?1.2 常见的 JDK 厂商有哪些?1.3 OracleJDK 与 OpenJDK 有什么区别?1.4 开发中使用哪个版本的 JDK?生产环境呢? 为什么这么选?

2、 什么是 Java 字节码?

2.1 字节码文件中包含哪些内容?2.2 什么是常量?2.3 怎么理解常量池?

3、 JVM 的运行时数据区有哪些?

3.1 什么是堆内存?3.2 堆内存包括哪些部分?3.3 什么是非堆内存?

4、 什么是内存溢出?

4.1 什么是内存泄漏?4.2 内存泄漏和内存溢出有什么关系?

5、 分析对象的内存占用

5.1 对象内存占用计算出来的?5.2 对象头中包含哪些部分?

6、 常用的 JVM 启动参数有哪些?

6.1 设置堆内存 XMX 应该考虑哪些因素?6.2 假设物理内存是 8G,设置多大堆内存比较合适?6.3 ‐Xmx 设置的值与 JVM 进程所占用的内存有什么关系?6.4 怎样开启 GC 日志?6.5 请指定使用 G1 垃圾收集器来启动 Hello 程序

7、Java8 默认使用的垃圾收集器是什么?

7.1 Java11 的默认垃圾收集器是什么?7.2 常见的垃圾收集器有哪些?7.3 什么是串行垃圾收集?7.4 什么是并行垃圾收集?7.5 什么是并发垃圾收集器?7.6 什么是增量式垃圾收集?7.7 什么是年轻代?7.8 什么是 GC 停顿(GC pause)?7.9 GC 停顿与 STW 停顿有什么区别?

8、 如果 CPU 使用率突然飙升,你会怎么排查?

8.1 如果系统响应变慢,你会怎么排查?8.2 系统性能一般怎么衡量

9、 使用过哪些 JVM 相关的工具?

9.1 查看 JVM 进程号的命令是什么?9.2 怎么查看剩余内存?9.3 查看线程栈的工具是什么?9.4 用什么工具来获取堆内存转储?9.5 内存 Dump 时有哪些注意事项?9.6 使用 JMAP 转储堆内存大致的参数怎么处理?9.7 为什么转储文件以 .hprof 结尾?9.8 内存 Dump 完成之后,用什么工具来分析?9.9 如果忘记了使用什么参数你一般怎么处理?

10、Java 内存区域

10.1 说一下 JVM 的主要组成部分及其作用?10.2 说一下 JVM 运行时数据区 10.3 深拷贝和浅拷贝 10.4 说一下堆栈的区别?10.5 队列和栈是什么?有什么区别?

11、HotSpot 虚拟机对象探秘

11.1 对象的创建 11.2 为对象分配内存 11.3 处理并发安全问题 11.4 对象的访问定位 11.5 句柄访问 11.6 直接指针

12、垃圾收集器

12.1 简述 Java 垃圾回收机制 12.2GC 是什么?为什么要 GC12.3 垃圾回收的优点和原理。并考虑 2 种回收机制 12.4 垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?12.5Java 中都有哪些引用类型?12.6 怎么判断对象是否可以被回收?12.7 在 Java 中,对象什么时候可以被垃圾回收 12.8JVM 中的永久代中会发生垃圾回收吗 12.9 说一下 JVM 有哪些垃圾回收算法?12.10 标记-清除算法 12.11 复制算法 12.12 标记-整理算法 12.13 分代收集算法 12.14 说一下 JVM 有哪些垃圾回收器?12.15 详细介绍一下 CMS 垃圾回收器?12.16 新生代垃圾回收器和老年代垃圾回收器都有哪些?有什么区别?12.17 简述分代垃圾回收器是怎么工作的?

13、内存分配策略

13.1 简述 java 内存分配与回收策率以及 Minor GC 和 Major GC13.2 对象优先在 Eden 区分配 13.3 大对象直接进入老年代 13.4 长期存活对象将进入老年代

14、虚拟机类加载机制

14.1 简述 java 类加载机制?14.2 描述一下 JVM 加载 Class 文件的原理机制 14.3 什么是类加载器,类加载器有哪些?14.4 说一下类装载的执行过程?14.5 什么是双亲委派模型?

15、JVM 调优

15.1 说一下 JVM 调优的工具?15.2 常用的 JVM 调优的参数都有哪些?

以上完整题目答案资料,及更多 java 大小厂面经真题资料已整理成文档,需要获取资料的小伙伴可以+ VX: mxk6072



用户头像

钟奕礼

关注

还未添加个人签名 2021-03-24 加入

还未添加个人简介

评论

发布
暂无评论
拿下大厂?这几道jvm面试题必须要懂_Java_钟奕礼_InfoQ写作社区