Bedanya JPM, JRE, JDK sama SDK ?
1. JVM (Java Virtual Machine)
JVM inilah yang merupakan jantung dari Java Platform. JVM ini adalah pihak yang bertanggung jawab untuk mengeksekusi program Java menjadi bahasa mesin untuk diproses oleh prosesor. JVM mampu menerjemahkan code-code Java ke hampir semua platform. JVM ini-lah yang membuat Java "write once, run everywhere" alias multi-platform
2. JRE (Java Runtime Environment)
JRE inilah yang memungkinkan sebuah program Java dapat berjalan di mesin Anda. JRE ini mengeksekusi binary-binary dari class-class dan mengirimnya ke JVM untuk diproses lagi ke prosesor. Setiap JRE pasti memiliki sebuah JVM di dalamnya untuk melakukan pemrosesan selanjutnya
3. JDK (Java Development Kit)
Seperti namanya, JDK adalah semacam kotak peralatan (kit) yang digunakan untuk development. JDK ini berguna saat Anda menulis code program. Seperti halnya JRE, JDK juga memiliki JVM di dalamnya.• javac, yaitu program untuk meng-compile kode sumber
• java, yaitu program untuk meluncurkan aplikasi
4. SDK (Software Development Kit)
Ini lain lagi ceritanya. SDK ini biasanya adalah kumpulan dari tools yang dibutuhkan untuk membuat serta menjalankan program. Jadi di dalam SDK itu ada JDK-nya, ada JRE-nya serta mungkin IDE-nya juga.jadi pada intinya gini nih... :
1. JVM itu ada di dalam JRE
2. JVM juga ada di dalam JDK
3. fungsi JRE untuk "membaca" program Java
4. sedangkan JDK untuk "menulis" program Java, dan
5. SDK umumnya berisi JDK & JRE.