Mesin virtual Java bertindak sebagai lapisan abstraksi tambahan antara platform Java dan perangkat keras mesin yang mendasarinya. Kode sumber Java hanya dapat berjalan di mesin yang telah menginstal JVM di dalamnya. Alasan diperlukannya Mesin Virtual Java akan dijelaskan di bagian sejarah pemrograman.