Java Virtual Machine
Java virtual Machine(JVM) is a virtual Machine that provides runtime environment to execute java byte code. The JVM doesn't understand Java code, that's why you compile your *.java files to obtain *.class files that contain the bytecodes understandable by the JVM.
JVM is a engine that provides runtime environment to drive the Java Code or applications. It converts Java bytecode into machines language. JVM is a part of JRE(Java Run Environment).
JVM control execution of every Java program. It enables features such as automated exception handling, Garbage-collected heap.