1,jvm内存结构(堆栈等各种结构分区)与内存模型(多线程不安全的原因)的区别,具体的含义?

2,有哪些垃圾收集算法?​​复制算法​​,标记清除,标记整理等等!

3,新生代,老年代,永久代对象怎么划分?什么时候处于什么代?什么时候回收?

4,怎么手动回收垃圾?1,重写falinize方法并调用,2,调用system.gc,然后等待jvm回收,也即是说永远不可能手动回收垃圾!

5,怎么判断对象是否能回收?遍历gc roots不可达的对象,就是可以回收的对象!

引用计数法为什么不能用来做为可回收对象依据?有些相互引用的对象永远不会回收!

6,垃圾收集器有哪些?有什么区别?比较常用的CMS,G1收集器,以最大吞吐量,最小响应时间,尽量少的full gc等因素进行选择!

7,​​类加载​​的执行过程是什么?双亲委派是啥意思?自行百度。。

8,jvm监控工具?调优工具?调优参数?

基本上掌握这些之后,jvm的相关面试都可以对答如流了,这也是互联网大厂肯定会问的东西!



因为相信,所以看见.