Original: Java bytecode instructions are analogous to machine code , but are intended to be interpreted by a virtual machine ( VM ) written specifically for the host hardware .
Simplified: This means that when the program is executed , the Java Virtual Machine interprets the bytecode and translates it into machine code .