JRE stands for the Java Runtime Environment. JRE provides the libraries, the Java Virtual Machine (JVM), and other components to run applets and applications written in the Java programming language. If you just need to run a Java program, chances are you will only need to install the Java JRE.
JDK stands for the Java Development Kit. JDK is a super set of the JRE, and contains everything that is in JRE, plus tools like the compilers and debuggers necessary for developing applets and applications. If your a Java programmer or developer, you will most certainly need the Java JDK package installed.
In case you haven’t heard, Oracle announced the release of Java 10 last month. Hard to believe right?
The following diagram gives a good visual at to what each package contains. The main difference is noted in the blue section. The tools and APIs are not included with the JRE package.
Check out the Java SE Package Stats post that has some cool stats on the number of classes and methods in each Java SE version.