Java Virtual Machine (JVM) เป็นสภาพแวดล้อมที่รันโปรแกรม Java โปรแกรม Java ถูกคอมไพล์เป็นภาษากลางที่เรียกว่า bytecode ซึ่งเป็นสิ่งที่ JVM ดำเนินการ โปรแกรมใด ๆ ที่คอมไพล์เป็น bytecode สามารถดำเนินการได้บนแพลตฟอร์มใด ๆ ที่ติดตั้ง JVM ไว้ สิ่งนี้ทำให้ซอฟต์แวร์ Java เข้ากันได้กับแพลตฟอร์มการคำนวณที่แตกต่างกันมากมาย JVM มีข้อดีและข้อเสียที่น่าสังเกตบางประการที่นักพัฒนาซอฟต์แวร์ควรชั่งน้ำหนักอย่างรอบคอบก่อนที่จะลงทุนในการพัฒนา Java
ความเป็นอิสระของแพลตฟอร์ม
Java bytecode สามารถเขียนได้ครั้งเดียวแล้วรันบนหลายแพลตฟอร์ม ไบต์โค้ด Java ไม่จำเป็นต้องถูกพอร์ตไปยังสภาพแวดล้อมฮาร์ดแวร์เฉพาะ เนื่องจากรันใน Java Virtual Machine แอปพลิเคชันใดๆ ที่คอมไพล์เป็น Java bytecode สามารถทำงานบนแพลตฟอร์มการคำนวณใดๆ ที่มี Java Virtual Machine
วีดีโอประจำวันนี้
ความปลอดภัย
Java ถูกเขียนขึ้นโดยคำนึงถึงความปลอดภัย Java Virtual Machine มีคุณลักษณะด้านความปลอดภัยในตัวที่อนุญาตให้โปรแกรมเมอร์เขียนโปรแกรม Java ที่มีความปลอดภัยสูง นอกจากนี้ยังป้องกันซอฟต์แวร์ที่เป็นอันตรายจากการประนีประนอมระบบปฏิบัติการ (OS) เนื่องจากจะป้องกันไม่ให้แอปพลิเคชัน Java โต้ตอบกับทรัพยากรระบบปฏิบัติการ
ประสิทธิภาพ
โปรแกรม Java ที่ทำงานบน Java Virtual Machine มักจะทำงานช้ากว่าโปรแกรมที่เทียบเท่าที่เขียนด้วย C++ ความเป็นกลางของระบบของ bytecode ทำหน้าที่เป็นข้อเสียในด้านประสิทธิภาพ เนื่องจากการปรับโค้ดให้เหมาะสมนั้นอาศัยคุณลักษณะเฉพาะของระบบเป็นอย่างมาก เนื่องจาก Java bytecode เป็นกลางกับระบบ จึงไม่สามารถปรับให้เหมาะสมสำหรับชุดฮาร์ดแวร์เฉพาะ
ความถูกต้อง
โปรแกรมที่ทำงานตามที่คาดไว้กล่าวกันว่าถูกต้อง เนื่องจากโปรแกรม Java อาศัย Java Virtual Machine เพื่อดำเนินการ JVM จึงต้องปราศจากข้อผิดพลาดเพื่อให้โปรแกรมทำงานได้อย่างถูกต้อง การพึ่งพา Java Virtual Machine ทำให้เกิดจุดบกพร่องที่เป็นไปได้สำหรับโปรแกรม โชคดีที่ซอฟต์แวร์ Java Virtual Machine ผลิตขึ้นด้วยมาตรฐานที่สูงมาก ดังนั้นจึงไม่น่าจะมีข้อผิดพลาดใดๆ ความล้มเหลวใน Java Virtual Machine นั้นมีความเป็นไปได้ที่ควรพิจารณา