JVM的面试题

1、JVM的组成

1.1、什么是程序计数器?

1.2、介绍下Java堆


JDK1.7与JDK1.8的内存结构区别

为什么会有这种内存结构的区别?

因为元空间/方法区存储的都是一些常量,项目随着动态类加载的情况越来越多,这块儿内存的大小就变的越来越不可控。小了会出现系统的内存溢出,大的话又浪费内存,现在都放到了本地内存,防止堆内存溢出(OOM)

1.3、什么是虚拟机栈?

1.4、解释一下方法区

1.5、你听过直接内存吗?

用直接内存就少拷贝了一次

2、类加载器

2.1、什么是类加载器?

2.2、什么是双亲委派模型?

2.3、类加载的执行流程

3、垃圾回收

3.1、对象什么时候可以被回收?

3.2、JVM的垃圾回收算法有哪些?

3.3、说一下JVM的分代回收

3.4、JVM有哪些垃圾回收器?

初始标记是先找出跟GC ROOT直接相连的对象

并发标记是找出剩下的对象

3.4、聊一下G1垃圾回收器

3.5、强、软、弱、虚引用的区别

4、JVM实践

4.1、JVM调优的参数在哪里设置?

4.2、JVM调优的参数有哪些?

4.3、JVM调优的工具

4.4、内存泄露的排查思路

4.5、CPU飙高的排查思路

相关推荐
froginwe118 分钟前
Maven 仓库概述
开发语言
低客的黑调10 分钟前
为你的项目选择一个适合的[垃圾收集器]
java·jvm·算法
雨中飘荡的记忆18 分钟前
优惠券系统设计与实现
java
1***t82718 分钟前
将 vue3 项目打包后部署在 springboot 项目运行
java·spring boot·后端
芬加达23 分钟前
leetcode34
java·数据结构·算法
__万波__26 分钟前
二十三种设计模式(三)--抽象工厂模式
java·设计模式·抽象工厂模式
二川bro41 分钟前
Python在AI领域应用全景:2025趋势与案例
开发语言·人工智能·python
better_liang1 小时前
每日Java面试场景题知识点之-线程池配置与优化
java·性能优化·面试题·线程池·并发编程
q***2511 小时前
Windows操作系统部署Tomcat详细讲解
java·windows·tomcat