JVM vs JRE
Java adalah bahasa pemrograman lintas platform. Itu juga menganut prinsip "tulis sekali, jalankan di mana saja". Program yang ditulis dalam java dapat dikompilasi ke java bytecode oleh kompiler java. Kemudian, bytecode dapat dieksekusi pada platform apa pun yang menjalankan JRE (Java Runtime Environment). JRE termasuk JVM (mesin virtual Java), pustaka pangkalan (yang mengimplementasikan Java API) dan file pendukung lainnya. JVM adalah mesin komputasi abstrak yang bertindak sebagai mediator antara platform spesifik JRE dan kode java.
Apa itu JVM?
JVM adalah jenis mesin virtual yang digunakan oleh mesin untuk menjalankan java bytecode. Menurut Sun Microsystems (yang mengembangkan Java sampai dibeli oleh Oracle, baru -baru ini), ada lebih dari 4 miliar perangkat yang diaktifkan JVM di dunia. Lebih khusus lagi, Java Virtual Machine adalah mesin komputasi abstrak yang diimplementasikan pada perangkat keras dan sistem operasi standar. Salah satu fungsi penting yang disediakan oleh JVM adalah penanganan pengecualian otomatis. Biasanya, kumpulan perpustakaan standar menyertai JVM. Faktanya, JRE adalah bundel yang berisi JVM dan kelas -kelas yang mengimplementasikan Java API. JVM adalah komponen yang sangat penting, yang mengakomodasi sifat "dikompilasi sekali, berjalan di mana saja" dari bahasa pemrograman Java. Selama JVM berjalan, kode Java Anda dapat berjalan di atasnya, terlepas dari platform yang digunakan di mesin. Inilah sebabnya Java disebut bahasa lintas platform atau multi-platform.
Apa itu JRE?
JRE adalah lingkungan eksekusi di mana kode java dijalankan. Biasanya, JRE terdiri dari JVM, kelas dasar standar (yang mengimplementasikan API Java basis) dan file pendukung lainnya. Jenis dan Struktur JRE bervariasi tergantung pada sistem operasi dan arsitektur CPU. Saat kode Java dijalankan, JRE akan berkomunikasi dengan sistem operasi, yang pada gilirannya akan berbicara dengan komponen perangkat keras yang sesuai. Memasang JRE di sistem Anda adalah suatu keharusan untuk menjalankan kode java apa pun di mesin Anda. Namun, JRE tidak termasuk kompiler, debugger atau alat lain yang diperlukan untuk pengembangan program Java (seperti AppletViewer dan Javac). Jika Anda perlu mengembangkan program di Java, Anda harus memiliki JDK (Java Development Kit), yang termasuk JRE juga.
Apa perbedaan antara dan JVM dan JRE?
Meskipun, dalam penggunaan sehari -hari, istilah JVM dan JRE digunakan secara bergantian, mereka memiliki perbedaan. JVM adalah mesin virtual yang berjalan di atas sistem operasi, sedangkan JRE adalah lingkungan eksekusi runtime. JVM adalah bagian dari JRE. Spesifikasi JVM bertindak sebagai tautan antara implementasi JRE khusus platform dan perpustakaan Java standar. Oleh karena itu, JVM adalah entitas yang menyediakan abstraksi dari detail implementasi batin ke programmer. Dan itu bertanggung jawab untuk menafsirkan bytecode yang dikompilasi. Namun, JVM membutuhkan pustaka pangkalan dan file pendukung lainnya untuk menjalankan java bytecode. Namun terkadang, JRE hanya diidentifikasi sebagai implementasi JVM.