COLLECTION · 合集
Java 深入
从 Amber、Panama、Loom、Vector、Leyden、Valhalla、Lilliput、ZGC、Shenandoah 与 CRaC 出发,深入 Java 语言演进、并发、硬件加速、内存管理、原生互操作与运行时优化。
CHAPTER 01
现代 Java 与平台边界
CHAPTER 02
并发与执行模型
CHAPTER 03
启动、部署与运行时优化
CHAPTER 04
数据布局与值语义
Project Valhalla:Java 为什么需要没有身份的对象
从对象身份的隐藏成本出发,理解 Value Object 的语义、内存局部性、标量替换、JDK 28 预览边界,以及 Valhalla 与 record、Kotlin value class、C# struct 和 Rust 值语义的差异。
Project Valhalla:Value Object 的 JVM 底层模型
深入 value class 的身份约束、对象头、相等性、构造协议、标量化与物化、调用约定、反射和并发原子性,理解“没有身份”如何变成 JVM 的优化自由。
Project Valhalla:Null Restriction、扁平数组与内存布局
从 nullable 引用的表示成本出发,拆解 null-restricted storage、严格字段初始化、默认值、数组扁平化、GC 扫描、原子性与迁移兼容性,并明确 JDK 28 已预览能力与后续草案的边界。
Project Valhalla:从装箱到泛型特化
从 Java 泛型擦除与 primitive boxing 的成本出发,拆解通用泛型、特化代码、共享实现、类文件表示、迁移兼容性,以及 Valhalla 与 Kotlin、C#、Rust 泛型模型的差异。
Project Lilliput:HotSpot 如何压缩 Java 对象头
从 64 位 HotSpot 的对象头布局出发,拆解 Compact Object Headers 如何把 96 位头部压到 64 位、mark word 与 klass pointer 的位预算、锁与 GC 状态迁移、真实内存收益及其与 Valhalla 的边界。
CHAPTER 05
语言演进与类型表达
CHAPTER 06
性能与硬件加速
CHAPTER 07