Bytekod är instruktioner för en virtuell maskin. I Java översätter kompilatorn javac källkod till bytekod i klassfiler. En JVM kan sedan tolka bytekoden eller kompilera den vidare till maskinkod under körningen. Bytekod och processorns maskinkod är alltså olika format.
kompilerad kod, det vill säga, programkod (skriven av människor) är översatt till kod som är tolkningsbar för datorer (det vill säga ettor och nollor).