Gambaran
Karena koneksi dan perbedaan antara JDK, JRE, dan JVM selalu tidak jelas, artikel ini hari ini ditampilkan untuk memilah hubungan antara ketiganya. Usap pikiran Anda ~
1. JDK (Java Development ToolKit) Alat pengembangan Java
JDK menyertakan jre, yang selain jre juga menyertakan beberapa kelas alat javac. File sumber Java dikompilasi ke dalam file kelas. File java digunakan untuk menjalankan program ini. Selain itu, ini juga berisi API sumber java.
Paket JDK yang umum digunakan:
java.lang: Ini adalah kelas dasar dari sistem, seperti String, Matematika, Integer, sistem, utas untuk menyediakan fungsi yang umum digunakan.
Java.io memiliki kelas yang terkait dengan masukan dan keluaran yang digunakan, seperti operasi file.
java.net: Ada kelas yang terkait dengan jaringan, seperti URL, URLVonnection, dll.
Java.util: Ini adalah kelas tambahan sistem, terutama kumpulan kelas koleksi, daftar, peta, dll.
Java.sql: Ini adalah kelas manipulasi data, koneksi, statememt, hasil, dll.
JDK memiliki tiga versi berikut:
J2SE, edisi standar, edisi standar; J2EE, edisi enterpsise, edisi perusahaan; J2ME, edisi mikro, terutama digunakan untuk aplikasi java pada perangkat seluler
Singkatnya, JDK adalah inti dari seluruh JAVA, termasuk Java Runtime Environment, sekumpulan alat Java (javac / java / jdb, dll.) Dan pustaka kelas berbasis Java (yaitu, Java API menyertakan rt.jar).
2. JRE (Java Runtime Enviroment) lingkungan runtime Java
JRE termasuk JVM
JRE adalah lingkungan dasar yang diperlukan untuk memastikan bahwa program java dapat berjalan, yaitu, JRE hanya memastikan bahwa program java berjalan dan tidak dapat digunakan untuk pengembangan. Jdk digunakan untuk pengembangan. Jika Anda ingin mengembangkan Java, Anda harus Berisi lingkungan tempat ia dapat berjalan. Oleh karena itu, JDK menyertakan JVM. Dan semua program Java harus dijalankan di bawah JRE.
JDK mencakup pustaka kelas inti JVM dan JAVA serta file pendukung. Dibandingkan dengan JDK, JDK tidak berisi kompiler alat pengembangan, debugger dan alat lainnya.
Tiga, JVM (Java Virtual Mechine) mesin virtual Java
JRE adalah lingkungan runtime Java. Java berjalan pada JVM yang mendasarinya, yaitu mesin virtual Java. Mesin virtual Java digunakan untuk memuat file kelas. Alasan mengapa Java memiliki efek lintas platform adalah karena JVM ditulis menurut platform yang berbeda. Ya, oleh karena itu, Java adalah lintas platform, tetapi JVM bergantung pada platformnya.
JVM adalah bagian dari JRE, ini adalah komputer fiktif, yang diwujudkan dengan mensimulasikan berbagai fungsi komputer pada komputer sebenarnya. JVM memiliki arsitektur perangkat keras lengkapnya sendiri, seperti prosesor, tumpukan, register, dll., Serta sistem instruksi yang sesuai. Tugas utama JVM adalah menafsirkan set instruksinya sendiri (yaitu bytecode) dan memetakannya ke set instruksi CPU lokal atau panggilan sistem OS. Bahasa Java berjalan lintas platform. Faktanya, sistem operasi yang berbeda menggunakan aturan pemetaan JVM yang berbeda untuk membuatnya independen dari sistem operasi dan menyelesaikan lintas platform. JVM tidak peduli dengan file sumber Java level atas, JVM hanya memperhatikan file kelas yang dihasilkan oleh file sumber. Komposisi file kelas termasuk set instruksi JVM, tabel simbol, dan beberapa informasi tambahan.
Hubungan antara JDK, JRE, dan JVM
Sebenarnya, ada direktori bernama jre di direktori instalasi JDK, yang berisi dua folder bin dan lib. Di sini, Anda dapat mengira bahwa binnya adalah jvm, dan lib adalah perpustakaan kelas yang diperlukan untuk pekerjaan jvm.
Singkatnya, setelah mengembangkan program JAVA menggunakan JDK (memanggil JAVA API), file teks java dikompilasi menjadi bytecode JAVA melalui compiler (javac) di JDK, bytecode JAVA ini dijalankan di JRE, dan JVM mem-parsing kata-kata ini. Kode bagian, dipetakan ke set instruksi CPU atau panggilan sistem OS.
Kami akan membagikan beberapa developer dan konten DBA nanti, dan teman-teman yang tertarik dapat memperhatikannya! !
- Wawancara dengan "Penulis Finansial Paling Menguntungkan". Wu Xiaobo: Masalah penciptaan budaya sama seperti "gadis kecil yang cantik"
- "Lipstik Kota Terlarang" diumumkan untuk dihentikan karena masalah kualitas, dan sudah dipasarkan kurang dari satu bulan
- Wu Zhuolin dan istrinya berjalan di jalanan.Mereka sepertinya tinggal di hotel mewah bintang empat, dan biayanya tergantung pada Wu Qili.
- Charm Blue 18: 9 produk baru akan dirilis! Bagaimana cara memainkan permainan kata yang menolak untuk mengikuti dan tidak disebut layar penuh?
- Belum pernah terjadi sebelumnya dalam sejarah, verifikasi iOS 10.3.3 dibuka kembali, hanya untuk satu iPhone!
- Tencent mendapatkan lisensi uji jalan mengemudi otonom pertama di Shenzhen, dan mempromosikan peluncuran produk L3 pada tahun 2018