JVM 的内存区域有哪些?哪些是线程私有的?
先自己想一想,再看参考要点
参考要点
- 程序计数器、Java 虚拟机栈和本地方法栈是线程私有的,随线程创建和销毁
- 堆和方法区被所有线程共享,JDK 8 起方法区由本地内存中的元空间实现
- 另有 NIO 使用的直接内存
- 除程序计数器外都可能抛出 OutOfMemoryError,两种栈还可能抛出 StackOverflowError
参考要点
学习站:先用面试题自评定级,按水平和面试日期排出每天的计划,自评过的题按间隔复习。免费、无需注册,记录只保存在自己的浏览器中。