【大白话说Java面试题 第54题】【JVM篇】第14题:什么是可达性分析算法?

📅 2026/7/10 0:01:04 👁️ 阅读次数 📝 编程学习
【大白话说Java面试题 第54题】【JVM篇】第14题:什么是可达性分析算法?

📌PDF:大白话说Java面试题 — 02-JVM篇

第14题:什么是可达性分析算法

📚回答:

  • 核心流程
    可达性分析算法是 JVM 垃圾回收的核心机制之一,用于标记内存中的存活对象和垃圾对象。

1. GC Roots 的定义与作用
  • 定义

    • GC Roots 是一组特殊的对象,作为可达性分析的起点。
    • 它们包括以下几种类型:
      1. 静态变量:被static修饰的变量。
      2. 局部变量:方法中的参数或局部变量。
      3. 常量:字符串常量池中的常量。
      4. JNI 引用:本地方法(Native Method)中的引用。