JDK v.s. JRE
JRE
JRE: Java Runtime Environment. It includes
- the JVM,
 - the core libraries,
 - other additional components to run applications and applets written in Java.
 
JDK
JDK: Java Development Kit. It includes
- the JRE,
 - set of API classes,
 - Java compiler,
 - Webstart,
 - additional files needed to write Java applets and applications.
 
Comparison
- JDK is a superset of JRE; that is, JRE is a subset of JDK.
 - JDK is for writing and running Java applets and applications; JRE is for running Java applets and applications.