- 0
- 0
- 约8.17千字
- 约 10页
- 2026-06-08 发布于河北
- 举报
JVM高频面试试题及详细答案
一、JVM内存模型相关
1.请详细说明JVM运行时数据区的组成,以及各区域的作用和可能发生的OOM场景
答案:
JVM运行时数据区主要分为5个核心区域,各自职责和OOM场景如下:
• 程序计数器:线程私有,存储当前线程执行的字节码行号指示器,是唯一不会OOM的区域。多线程切换时通过它恢复执行位置,若执行native方法则值为undefined。
• Java虚拟机栈:线程私有,栈帧组成(局部变量表、操作数栈、动态链接、方法出口)。每个方法调用时创建栈帧入栈,执行完出栈。OOM场景:栈深度超过虚拟机允许的最大深度(StackOverflowError,如递归无终止条件);栈扩展时无法申请到足够内存(OutOfMemoryError,如创建大量线程导致栈内存总和超物理内存)。
• 本地方法栈:线程私有,与虚拟机栈功能类似,区别是为native方法服务。OOM场景同虚拟机栈(StackOverflowError/OutOfMemoryError)。
• Java堆:线程共享,JVM中最大的内存区域,用于存储对象实例和数组。堆被划分为年轻代(Eden区+Survivor区)和老年代,垃圾回收的主要区域。OOM场景:对象实例创建过多,垃圾回收无法释放足够内存(java.lang.OutOfMemoryErr
您可能关注的文档
最近下载
- 投融资岗位专业招聘考试题库.docx VIP
- 2026年黑龙江高考英语真题卷附答案.docx VIP
- 2023年施工员《设备安装施工专业管理实务》题库附完整答案(网校专用).docx
- (精华版)初中语文现代文阅读答题技巧课件.pptx VIP
- 2023年资料员资格考试题库【能力提升】.docx
- 2025四川成都香城投资集团招聘33人笔试历年题库附答案解析.docx VIP
- 2023年施工员《设备安装施工专业管理实务》题库【突破训练】.docx
- 2023年最新资料员考试题库附答案【培优】.docx
- 2025年新高二化学暑假衔接讲练 (人教版) 第07讲 化学平衡移动的相关图像(学生版).docx VIP
- 2026四川能投建工集团有限公司“筑梁计划”招聘实习生及见习生48人笔试备考题库及答案解析.docx VIP
原创力文档

文档评论(0)