Java 虛擬機器就像是在 Java 平台與基礎機器硬體間增加一個抽象層。Java 原始碼只能在有安裝 JVM 的機器上運作。需要 Java 虛擬機器的原因可以從程式設計的歷史演進中找到答案。