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飙高的排查思路

相关推荐
-西门吹雪14 分钟前
现代C++ 并发编程-学习指南
java·jvm·c++
lh179315 分钟前
数据产业服务分类(53)——分类设计——数据能力集成
java·人工智能·分类
zenithdev122 分钟前
fastcache:为 Go 设计的低 GC 压力内存缓存
开发语言·其他·缓存·golang
想你依然心痛24 分钟前
自定义RTOS内核:从零实现上下文切换与任务调度——汇编、PendSV
java·开发语言·汇编·pendsv
geovindu1 小时前
java:Abstract Factory Pattern
java·开发语言·后端·设计模式·抽象工厂模式·创建型模式
geovindu1 小时前
java: Factory Method Pattern
java·开发语言·后端·设计模式·工厂方法模式·创建型模式
程序员小八7771 小时前
如何自研一个全局异常处理器
java
风中的小甜瓜1 小时前
ASP.NET Page 那点事
java·前端·asp.net
m0_587098991 小时前
Qt,二进制文件读写建议
开发语言·qt
爱敲代码的小鱼1 小时前
springsecurity:
java·开发语言·数据库