一、什么是JVM
二、字节码的组成
三、说一下运行时数据区
四、哪些区域会出现内存溢出,会有什么现象?
五、JVM在JDK6-8之间在内存区域上有什么不同
六、类的生命周期
七、什么是类加载器
八、什么是双亲委派机制
九、如何打破双亲委派机制
什么是双亲委派机制?
- 双亲委派机制指的是:当一个类加载器接收到加载类的任务时,会自底向上交给父类加载器查找是否加载过,再由顶向下进行加载。
- 双亲委派机制的作用:保证类加载的安全性,避免重复加载。
- 打破双亲委派机制的方法:实现自定义类加载器,重写findClass方法,将双亲委派机制的代码去除。
十、Tomcat的自定义类加载器
十一、如何判断堆上的对象没有被引用?
十二、JVM 中都有哪些引用类型
十三、ThreadLocal中为什么要使用弱引用?
十四、有哪些垃圾回收算法
十五、有哪些常用的垃圾回收器
十六、如何解决内存泄漏问题
十七、常见的JVM参数