Java Virtual Machine,JVM, är det program som "kör" program skrivna iJava. En version av programvaran utvecklades avSun Microsystems i samband med utvecklandet av programspråket. Sedan Java SE version 7[1] är referensimplementationenOpenJDK.
JVM är, som namnet antyder, envirtuell maskin. Den är alltså inte en maskin (dator) som sådan, utan är en simulerad dator som körs i systemet. Detta innebär att alla program som körs med JVM lider av en liten brist på processorkraft (så kallad overhead) eftersom det också behövs kraft att hålla själva JVM:en igång.
JVM tolkar den javabytekod som skapas när man programmerar Java ochkompilerar. Däri ligger också en av Javaspråkets styrkor: man kan köra Javaprogram på allaoperativsystem för vilka det finns en JVM byggd. Alla JVM läser bytekoden på samma sätt, det är bara JVM:en som man måste konvertera till en annan plattform. Därmed kan man sprida sina Javaklasser enkelt mellan olikaplattformar ochoperativsystem, och därför lämpar sig Java utmärkt somprogramspråk påInternet.