เวอร์ชัน Java 9 ได้เปิดตัวการปรับปรุงใหม่และเพิ่มคุณสมบัติใหม่ ประกอบด้วย JShell , Http2Client , ระบบโมดูลแพลตฟอร์ม Java (JPMS ), โถหลายรุ่น ไฟล์ Stack Walking API , เมธอดส่วนตัวในอินเทอร์เฟซ , ประมวลผลการอัปเดต API , อัปเดต API การรวบรวม , ปรับปรุงสตรีม API และอื่นๆ
ด้านล่างนี้คือข้อแตกต่างเล็กน้อยระหว่าง Java 8 และ Java 9
- ใน Java 8 และเวอร์ชันก่อนหน้า องค์ประกอบระดับบนสุดคือ แพ็คเกจ . มันวางชุดของประเภทที่เกี่ยวข้อง (คลาส, อินเตอร์เฟส, enums และอื่น ๆ ) ในกลุ่ม และยังมีชุดของทรัพยากรในขณะที่ Java 9 แนะนำองค์ประกอบใหม่:โมดูล ซึ่งสามารถใช้เพื่อวางชุดของแพ็คเกจที่เกี่ยวข้องในกลุ่มและองค์ประกอบใหม่อื่น: ตัวอธิบายโมดูล , module-info.java ไฟล์.
- แอปพลิเคชัน Java 8 ใช้แพ็คเกจเป็นส่วนประกอบระดับบนสุด ในขณะที่แอปพลิเคชัน Java 9 ใช้โมดูลเป็นส่วนประกอบระดับบนสุด
- แต่ละโมดูล Java 9 มีเพียงหนึ่งโมดูลที่มีตัวอธิบายโมดูลเดียว ในขณะที่แพ็คเกจ Java 8 ไม่ได้สร้างหลายโมดูลในโมดูลเดียว
จาวา 8:
Packages - Types (classes, enums, interfaces, etc) - Code - Data - Resources - xml - images - properties
จาวา 9:
Modules (Resources, Module Descriptor) - Packages - Types (classes, enums, interfaces, etc) - Code - Data - Resources - xml - images - properties