Java 虚拟机共46篇

JVM 是 Java 程序运行的核心,是性能优化与问题排查的基础。Java 虚拟机面试题的考察重点包括 JVM 的内存区域划分、垃圾回收机制、类加载过程、性能监控与调优、字节码指令、JIT 编译、内存泄漏的分析与排查、以及不同垃圾回收器的应用场景。

面试题:JVM 的 TLAB(Thread-Local Allocation Buffer)是什么?

TLAB(Thread-Local Allocation Buffer)是 JVM 中用于提升对象分配效率的一种机制。它是堆内存中的一块线程私有的缓冲区,每个线程在分配对象时,会优先在自己的 TLAB 中分配内存,从而避免多...
程序百科的头像-程序百科程序百科1个月前
04314

面试题:Java 中的 CMS 和 G1 垃圾收集器如何维持并发的正确性?

在 Java 中,CMS(Concurrent Mark-Sweep)和 G1(Garbage-First)垃圾收集器都支持并发垃圾回收,即在应用程序运行的同时执行部分垃圾回收工作。为了维持并发的正确性,它们需要解决以下问题:...
程序百科的头像-程序百科程序百科29天前
02711

面试题:什么是 Java 中的 JIT(Just-In-Time)?

在 Java 中,JIT(Just-In-Time) 是一种即时编译技术,它是 JVM(Java 虚拟机)的重要组成部分。JIT 的主要作用是将 Java 字节码(Bytecode)动态编译为本地机器码(Native Code),以提...
程序百科的头像-程序百科程序百科1个月前
04914

面试题:说说 Java 的执行流程?

Java程序的执行流程可以分为几个主要阶段,从源代码编写到最终的执行。以下是Java程序的执行流程: 1. 编写源代码 开发者使用Java编程语言编写源代码文件,文件扩展名为.java。 例如:Hell...
程序百科的头像-程序百科程序百科29天前
0345

面试题:Java 中的 young GC、old GC、full GC 和 mixed GC 的区别是什么?

在Java中,垃圾回收(GC)是自动内存管理的关键部分。不同的GC类型针对不同的内存区域和场景。以下是young GC、old GC、full GC和mixed GC的区别: 1. Young GC(年轻代GC) 目标区域:年...
程序百科的头像-程序百科程序百科29天前
0298

面试题:Java 是如何实现跨平台的?

Java 实现跨平台的核心在于 “一次编写,到处运行” 的理念,这主要依赖于以下几个关键技术和机制: 1. Java 虚拟机(JVM) JVM 的作用: JVM 是 Java 跨平台的基石。它是一个抽...
程序百科的头像-程序百科程序百科1个月前
0218

面试题:什么是 Java 中的 logging write barrier?

在 Java 中,Logging Write Barrier 是一种用于垃圾收集器(尤其是并发垃圾收集器)的机制,用于在应用程序线程修改对象引用时记录这些修改,以确保垃圾收集器能够正确地跟踪对象图的动态...
程序百科的头像-程序百科程序百科29天前
0386

面试题:JIT 编译后的代码存在哪?

在 Java 中,JIT(Just-In-Time)编译器将热点代码(频繁执行的字节码)动态编译为本地机器码后,这些编译后的代码会存储在 JVM 的内存区域中,具体来说,是存储在 Code Cache(代码缓存)...
程序百科的头像-程序百科程序百科1个月前
03011

面试题:什么条件会触发 Java 的 young GC?

在Java中,Young GC(年轻代垃圾回收)的触发条件主要与年轻代(Young Generation)的内存使用情况有关。年轻代包括Eden区和两个Survivor区(S0和S1)。以下是触发Young GC的具体条件: 触发条...
程序百科的头像-程序百科程序百科29天前
03011

面试题:JVM 由哪些部分组成?

JVM(Java Virtual Machine,Java 虚拟机)是 Java 程序运行的核心环境,它负责将 Java 字节码翻译成机器指令并执行。JVM 主要由以下几个部分组成: 1. 类加载器子系统(Class Loader Subs...
程序百科的头像-程序百科程序百科1个月前
0297