
JEP 531: Lazy Constants พรีวิวรอบสามใน JDK 27
อยากได้ของที่ init ช้าแบบ lazy แต่ยังอยากให้ JVM พับค่าคงที่ได้เหมือน final นั่นคือช่องของ Lazy Constants
JEP 531 เป็นพรีวิวรอบสามใน JDK 27 แนะนำ java.lang.LazyConstant ที่สร้างด้วยฟังก์ชันคำนวณ ค่าถูกตั้งได้ไม่เกินหนึ่งครั้งแม้เรียกพร้อมกันหลายเธรด และหลังตั้งแล้ว JVM จัดการได้แบบค่าคงที่ถ้าฟิลด์ที่ถือมันเป็น final
มี List.ofLazy, Map.ofLazy, และ Set.ofLazy สำหรับคอลเลกชันที่สมาชิก init คนละจังหวะ
ต้องเปิด --enable-preview ตามที่ JEP บอก
หน้าโครงการ JDK 27 ยังระบุสถานะ Release Candidate และ General Availability วันที่ 15 กันยายน 2026 วันนี้ (4 ก.ย.) ยังไม่ใช่ GA
Recap
- อ่าน JEP 531 ก่อนออกแบบ logger หรือคอมโพเนนต์แบบ lazy
- คอมไพล์/รันด้วย
--enable-preview - วางแผนทดสอบบน EA/RC ไม่สับสนกับ GA ที่ยังไม่ถึง