排序
面试题:JVM 的 TLAB(Thread-Local Allocation Buffer)是什么?
TLAB(Thread-Local Allocation Buffer)是 JVM 中用于提升对象分配效率的一种机制。它是堆内存中的一块线程私有的缓冲区,每个线程在分配对象时,会优先在自己的 TLAB 中分配内存,从而避免多...
面试题:Java 中的 CMS 和 G1 垃圾收集器如何维持并发的正确性?
在 Java 中,CMS(Concurrent Mark-Sweep)和 G1(Garbage-First)垃圾收集器都支持并发垃圾回收,即在应用程序运行的同时执行部分垃圾回收工作。为了维持并发的正确性,它们需要解决以下问题:...
面试题:什么是 Java 中的 JIT(Just-In-Time)?
在 Java 中,JIT(Just-In-Time) 是一种即时编译技术,它是 JVM(Java 虚拟机)的重要组成部分。JIT 的主要作用是将 Java 字节码(Bytecode)动态编译为本地机器码(Native Code),以提...
面试题:说说 Java 的执行流程?
Java程序的执行流程可以分为几个主要阶段,从源代码编写到最终的执行。以下是Java程序的执行流程: 1. 编写源代码 开发者使用Java编程语言编写源代码文件,文件扩展名为.java。 例如:Hell...
面试题:Java 中的 young GC、old GC、full GC 和 mixed GC 的区别是什么?
在Java中,垃圾回收(GC)是自动内存管理的关键部分。不同的GC类型针对不同的内存区域和场景。以下是young GC、old GC、full GC和mixed GC的区别: 1. Young GC(年轻代GC) 目标区域:年...
面试题:Java 是如何实现跨平台的?
Java 实现跨平台的核心在于 “一次编写,到处运行” 的理念,这主要依赖于以下几个关键技术和机制: 1. Java 虚拟机(JVM) JVM 的作用: JVM 是 Java 跨平台的基石。它是一个抽...
面试题:什么是 Java 中的 logging write barrier?
在 Java 中,Logging Write Barrier 是一种用于垃圾收集器(尤其是并发垃圾收集器)的机制,用于在应用程序线程修改对象引用时记录这些修改,以确保垃圾收集器能够正确地跟踪对象图的动态...
面试题:JIT 编译后的代码存在哪?
在 Java 中,JIT(Just-In-Time)编译器将热点代码(频繁执行的字节码)动态编译为本地机器码后,这些编译后的代码会存储在 JVM 的内存区域中,具体来说,是存储在 Code Cache(代码缓存)...
面试题:什么条件会触发 Java 的 young GC?
在Java中,Young GC(年轻代垃圾回收)的触发条件主要与年轻代(Young Generation)的内存使用情况有关。年轻代包括Eden区和两个Survivor区(S0和S1)。以下是触发Young GC的具体条件: 触发条...
面试题:JVM 由哪些部分组成?
JVM(Java Virtual Machine,Java 虚拟机)是 Java 程序运行的核心环境,它负责将 Java 字节码翻译成机器指令并执行。JVM 主要由以下几个部分组成: 1. 类加载器子系统(Class Loader Subs...