Java Virtual Machine – A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages and compiled to Java bytecode.
Java Run Time Environment – Java Runtime Environment (JRE) is a set of software tools for development of Java applications. It combines the Java Virtual Machine (JVM), platform core classes and supporting libraries.
Java Development Kit – is a software development environment used for developing Java applications and applets. It includes the Java Runtime Environment, an interpreter/loader, a compiler, an archiver, a documentation generator and other tools needed in Java development.