The Java Virtual Machine (JVM) is an abstraction layer between a Java application and the underlying platform. As the name implies, the JVM acts as a “virtual” machine or processor. To the bytecodes comprising the program, they are communicating with a physical machine; however, they are actually interacting with the JVM. -techopida
A software language and platform developed by Sun Microsystems. In order to run a program written in Java, you must have the JRE (Java Runtime Environment) installed on your computer. There are versions of the JRE for pretty much every conceivable operating system, which makes programs written in Java very portable, that is, they can run an a variety of operating systems.