打赏

相关文章

【JVM】创建对象一定分配在堆里吗

不一定。Java 对象通常分配在堆里,但经过 JVM 优化后,有些对象可能不会真正分配到堆中,甚至可能不会真实创建对象。 你这张图表达的是对象分配的大致判断流程: new 一个对象↓ 是否逃逸?↓ 未逃逸 → 可能栈上分配 → …

【JVM】垃圾回收

你这段整体思路是对的,已经很像面试回答了。可以按 “什么是垃圾 → 怎么找垃圾 → 怎么回收垃圾 → JVM 为什么分代 → 常见垃圾回收器 → GC 调优” 这个顺序理解。 我帮你重新解释一遍,并顺便指出几个容易说错的点。一、什么是垃圾? 在 Ja…

【JVM】三色标记法

三色标记法你可以理解成:GC 在做“根可达性遍历”时,为了记录每个对象的扫描进度,把对象分成白、灰、黑三种状态。 它本质不是新的垃圾判断规则,真正判断对象是否存活的规则还是:从 GC Roots 出发,能沿引用…

【JVM】双亲委派

你这份总结整体是对的,核心就是围绕三个问题: 类加载器是谁?它负责把 class 文件加载进 JVM。 双亲委派是什么?它规定类加载器加载类时,先让父加载器尝试加载。 为什么要破坏双亲委派?因为有些场景需要类隔…

【JVM】JIT编译器

JIT 可以理解为:Java 程序刚开始是解释执行的,运行一段时间后,JVM 发现某些代码经常被执行,就把这些代码编译成本地机器码,以后直接运行机器码,提高性能。1. 为什么 Java 需要 JIT? Java 程序的…

手机版浏览

扫一扫体验

微信公众账号

微信扫一扫加关注

返回
顶部