ตั้งแต่ Java 9 เวอร์ชันสามารถสอดคล้องกับ ความหมาย การกำหนดเวอร์ชัน . หมายเลขเวอร์ชันสามารถไม่เว้นว่าง ลำดับของสตริงที่คั่นด้วย จุด . ประกอบด้วยสามส่วนหลัก:หมายเลขเวอร์ชันหลัก , หมายเลขเวอร์ชันรอง และ ความปลอดภัย . โครงร่างการกำหนดเวอร์ชันใหม่ได้รับการบันทึกไว้ใน รันไทม์ เวอร์ชัน ข้อมูลคลาสและเวอร์ชันสามารถเข้าถึงได้จากมัน
หมายเลขเวอร์ชันมีรูปแบบดังนี้:
$MAJOR.$MINOR.$SECURITY(.$otherpart)?
- $MAJOR คือหมายเลขเวอร์ชันหลักและเพิ่มขึ้นเมื่อมีเวอร์ชันหลักออกวางจำหน่ายซึ่งโดยทั่วไปจะเปลี่ยนข้อกำหนดของแพลตฟอร์ม สำหรับ JDK 9 ค่านี้คือ 9
- $MINOR คือหมายเลขเวอร์ชันรองและเพิ่มขึ้นสำหรับรุ่นที่มีการแก้ไขข้อผิดพลาดและการปรับปรุง API มาตรฐาน
- $SECURITY คือระดับความปลอดภัยและเพิ่มขึ้นสำหรับรุ่นที่มีการแก้ไขความปลอดภัยที่สำคัญ เวอร์ชันนี้ไม่สามารถรีเซ็ตเป็นศูนย์ได้เมื่อหมายเลขเวอร์ชันย่อยเพิ่มขึ้น
- $otherpart ประกอบด้วยเวอร์ชันอย่างน้อย 1 เวอร์ชันที่ผู้ให้บริการ JVM ใช้เพื่อระบุโปรแกรมแก้ไขที่มีการแก้ไขที่ไม่เกี่ยวกับความปลอดภัยจำนวนเล็กน้อย
สตริงเวอร์ชันอาจเป็นหมายเลขเวอร์ชันพร้อมกับข้อมูลอื่นๆ เช่น ตัวระบุการเผยแพร่ก่อนเปิดตัวหรือหมายเลขบิวด์:
$VNUM(-$PRE)?\+$BUILD(-$OPT)? $VNUM-$PRE(-$OPT)? $VNUM(+-$OPT)?
- $PRE เป็นตัวระบุก่อนเผยแพร่
- $BUILD คือหมายเลขบิลด์
- $OPT เป็นข้อมูลทางเลือก เช่น การประทับเวลา
ตัวอย่าง
public class VersionSchemeTest { public static void main(String args[]) { System.out.println(Runtime.version().toString()); // String representation of the version System.out.println(Runtime.version().major()); // major version number System.out.println(Runtime.version().minor()); // minor version number System.out.println(Runtime.version().security()); // security version number } }
ผลลัพธ์
9.0.4+11 9 0 4