ความแตกต่างระหว่าง JVM และ JRE

ความแตกต่างระหว่าง JVM และ JRE
ความแตกต่างระหว่าง JVM และ JRE

วีดีโอ: ความแตกต่างระหว่าง JVM และ JRE

วีดีโอ: ความแตกต่างระหว่าง JVM และ JRE
วีดีโอ: แนะแนว TCAS วิศวะเคมี VS เภสัช VS วิทยาเคมี ชอบเคมีควรเข้าคณะไหน จบแล้วทำงานอะไร 2024, กรกฎาคม
Anonim

JVM กับ JRE

Java เป็นภาษาโปรแกรมข้ามแพลตฟอร์ม นอกจากนี้ยังยึดมั่นในหลักการ “เขียนครั้งเดียว รันได้ทุกที่” โปรแกรมที่เขียนด้วย Java สามารถคอมไพล์เป็น Java bytecode โดยคอมไพเลอร์ Java จากนั้น bytecode สามารถดำเนินการบนแพลตฟอร์มใดๆ ที่รัน JRE (Java Runtime Environment) JRE ประกอบด้วย JVM (Java Virtual Machine) ไลบรารีพื้นฐาน (ซึ่งใช้งาน Java API) และไฟล์สนับสนุนอื่นๆ JVM เป็นเครื่องคอมพิวเตอร์นามธรรมที่ทำหน้าที่เป็นสื่อกลางระหว่างแพลตฟอร์มเฉพาะ JRE และโค้ด Java

JVM คืออะไร

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

JRE คืออะไร

JRE คือสภาพแวดล้อมการทำงานที่รันโค้ด Java โดยทั่วไป JRE จะประกอบด้วย JVM คลาสพื้นฐานมาตรฐาน (ที่ใช้ Java API พื้นฐาน) และไฟล์สนับสนุนอื่นๆประเภทและโครงสร้างของ JRE จะแตกต่างกันไปตามระบบปฏิบัติการและสถาปัตยกรรมของ CPU เมื่อรันโค้ด Java JRE จะสื่อสารกับระบบปฏิบัติการ ซึ่งจะพูดคุยกับส่วนประกอบฮาร์ดแวร์ที่เกี่ยวข้อง การติดตั้ง JRE ในระบบของคุณเป็นสิ่งจำเป็นในการรันโค้ดจาวาบนเครื่องของคุณ อย่างไรก็ตาม JRE ไม่ได้รวมคอมไพเลอร์ ดีบักเกอร์ หรือเครื่องมืออื่นๆ ที่จำเป็นสำหรับการพัฒนาโปรแกรม Java (เช่น appletviewer และ javac) หากคุณต้องการพัฒนาโปรแกรมใน Java คุณต้องมี JDK (Java Development Kit) ซึ่งรวมถึง JRE ด้วย

ความแตกต่างระหว่าง JVM และ JRE คืออะไร

ถึงแม้การใช้ชีวิตประจำวัน คำว่า JVM และ JRE จะใช้แทนกันได้ แต่ก็มีความแตกต่างกัน JVM เป็นเครื่องเสมือนที่ทำงานบนระบบปฏิบัติการ ในขณะที่ JRE เป็นสภาพแวดล้อมการดำเนินการรันไทม์ JVM เป็นส่วนหนึ่งของ JRE ข้อกำหนด JVM ทำหน้าที่เป็นตัวเชื่อมระหว่างการใช้งาน JRE เฉพาะแพลตฟอร์มและไลบรารี Java มาตรฐานดังนั้น JVM จึงเป็นเอนทิตีที่ให้สิ่งที่เป็นนามธรรมจากรายละเอียดการใช้งานภายในแก่โปรแกรมเมอร์ และมีหน้าที่ในการตีความ bytecode ที่คอมไพล์แล้ว อย่างไรก็ตาม JVM ต้องการไลบรารีฐานและไฟล์สนับสนุนอื่น ๆ เพื่อรัน java bytecode แต่บางครั้ง JRE ก็ถูกระบุว่าเป็นการนำไปใช้ของ JVM

แนะนำ: