Java全栈面试宝典:从P6到P8-2 📅 2026/8/4 12:03:11 第2章:JVM深度解析(100题)面试官视角:本章面试官最看重的3个点内存模型和GC的实战理解——不是背"堆分新生代和老年代",而是能说清楚"什么对象进老年代、什么时候触发GC、GC日志怎么看"。我见过太多人能画出JVM内存结构图,但一问线上OOM怎么排查就卡壳线上问题排查能力——CPU飙升、内存泄漏、死锁、频繁Full GC,这些问题你遇到过吗?用什么工具排查的?jstack、jmap、Arthas你熟练用哪个?能讲出一次完整的排查经历,比背十个参数都管用调优参数的合理选择——不是堆一堆JVM参数,而是能说清楚"我们项目为什么用G1而不是CMS"、“-Xmx为什么设4G而不是8G”。参数背后要有业务场景和压测数据支撑,否则就是耍流氓2.1 内存模型(20题)题121:JVM内存模型(运行时数据区)?[P6] ⭐答案:JVM运行时数据区分为5块:堆、方法区(元空间)、虚拟机栈、本地方法栈、程序计数器。其中堆和方法区是线程共享的,其余三个是线程私有的。堆(Heap):对象实例和数组分配的地方,GC主要区域。通过-Xmx和-Xms控制大小。堆里又分新生代和老年代,默认