JVM 面试题
- 什么是JVM?它的作用是什么?
- Java程序是如何运行在JVM上的?
- JVM的主要组成部分有哪些?
- 什么是Java内存模型(JMM)?
- Java中的基本数据类型在内存中是如何存储的?
- 什么是垃圾回收?JVM中有哪些垃圾回收算法?
- 什么是类加载器(ClassLoader)?有哪些类加载器?
- 介绍一下Java的永久代(PermGen)和元空间(Metaspace)。
- 什么是GC Roots?Java中有哪些GC Roots对象?
- 什么是类加载的双亲委派模型?它的作用是什么?
- 解释一下JVM中的堆(Heap)和栈(Stack)的区别。
- 介绍一下Java中的强引用、软引用、弱引用和虚引用。
- 什么是对象的finalize()方法?它的作用是什么?有何缺点?
- 解释一下Java中的字符串常量池。
- 什么是JVM调优?常见的JVM调优参数有哪些?
- 什么是逃逸分析?它有什么作用?
- 什么是JVM的编译器和解释器?它们的区别是什么?
- 介绍一下Java中的即时编译器(JIT)。
- 什么是类加载的生命周期?各个阶段都做了什么?
- 解释一下Java中的栈帧(Stack Frame)。
- 什么是方法区(Method Area)?它与堆有何区别?
- 什么是字节码(Bytecode)?它的作用是什么?
- 介绍一下Java中的内存泄漏和内存溢出,如何避免?
- 什么是JVM的垃圾回收器?常见的垃圾回收器有哪些?它们的特点是什么?
- 什么是GC算法中的分代假设?为什么要使用分代假设?
查看答案