JVM
题目范围:第 107-173 题,共 67 道题目
核心考点:内存模型 · 垃圾回收 · 类加载机制 · GC算法 · 调优参数 · OOM排查 · 双亲委派
💡 提示: 使用左侧导航栏浏览本分类下的所有题目,或使用页面顶部的搜索功能快速查找。
Table of contents
- JVM的运行时内存区域是怎样的?
- JVM为什么要把堆和栈区分出来呢?
- 虚拟机中的堆一定是线程共享的吗?
- 什么是方法区?是如何实现的?
- 方法区存储什么数据?
- Java的堆是如何分代的?为什么分代?
- 什么是堆外内存?如何使用堆外内存?
- OutOfMemory和StackOverflow的区别是什么?
- 在什么情况下会发生栈内存溢出?
- 内存泄漏和内存溢出的区别是什么?
- 一个Java进程占用的内存都有哪些部分?
- JVM内存结构全面解析
- JVM是如何创建对象的?
- 一个对象的结构是什么样的?
- 一个空的 Java Object 对象占用多少内存?
- JVM如何保证给对象分配内存过程的线程安全?
- Java中的对象一定在堆上分配内存吗?
- 什么是逃逸分析?
- JVM 为什么使用元空间替换永久代?
- JVM如何判断对象是否存活?
- 什么是强引用、软引用、弱引用和虚引用?
- JVM有哪些垃圾回收算法
- 新生代和老年代的GC算法
- JVM中一次完整的GC流程是怎样的
- YoungGC和FullGC的触发条件是什么
- FullGC多久一次算正常
- 什么是三色标记算法
- 什么是跨代引用,有什么问题
- 什么是STW(Stop-The-World)及其影响
- 什么是安全点(Safe Point),有什么作用
- 介绍下CMS的垃圾回收过程
- G1和CMS有什么区别?
- 为什么G1从JDK9之后成为默认的垃圾回收器?
- JDK11中新出的ZGC有什么特点?
- Java8和Java11的GC有什么区别?
- 新生代和老年代的垃圾回收器有何区别?
- 项目中如何选择垃圾回收器?为啥选择这个?
- 说一说JVM的并发回收和并行回收
- 新生代如果只有一个Eden+一个Survivor可以吗?
- JVM 分代年龄为什么是 15 次?可以设置为 25 次吗?
- Java中的类什么时候会被加载?
- Java中类加载的过程是怎么样的?
- Java类加载流程与过程
- 类的生命周期是怎么样的?
- 什么是双亲委派?如何破坏?
- 双亲委派机制的核心思想是什么?
- 双亲委派机制如何打破(详细补充)
- 破坏双亲委派之后,能重写String类吗?
- 如何判断JVM中类和其他类是不是同一个类?
- JDK 1.8和1.9中类加载器有哪些不同?
- 什么是Class常量池,和运行时常量池关系是什么?
- 运行时常量池和字符串常量池的关系是什么?
- 字符串常量池是如何实现的?
- 什么是编译和反编译?
- Java一定就是平台无关的吗?
- Java是如何实现平台无关的?
- Java是编译型还是解释型语言?
- 什么是AOT编译?和JIT有啥区别?
- 简单介绍一下JIT优化技术?
- 常见的JVM工具有哪些
- JVM调优参数详解
- 常用的JVM启动参数有哪些
- Java发生了OOM一定会导致JVM退出吗
- 什么情况会导致JVM退出
- 对JDK进程执行kill -9有什么影响
- 什么是SPI,和API有什么区别