Java Platforms
Developers build applications to suit a particular set of users. Naturally, users of one application will have different needs from users of another. An application may be built to serve one user at a time, many users at once or even users who might be in a different place any given time. The Java platform realizes the differing challenges facing developers and offers the choice of different Java technologies depending on the user's needs.
The two most important components of the Java Platform are the Java Runtime Environment (JRE) and the Java Development Kit (JDK). When installed on a computer the JRE provides the operating system with the means to run Java programs, whereas the JDK is a collection of tools used by a programmer to create Java applications.
Note: The JRE is contained withing the JDK (i.e., if you just download the JDK you will be able to create and run java programs.).
The Java platform editions contain additional Java APIs for creating different types of applications:
Java Standard Edition
The Java Standard Edition (Java SE) is for building desktop applications and applets. These applications typically serve only a small number of users at one time.
Java Enterprise Edition
The Java Enterprise Edition (Java EE) is tailored for more complex applications to suit medium to large businesses. Typically they will be server based applications focusing on serving the needs of lots users at one time.
Note: The Java EE contains many of the Java APIs found in the Java SE.
Java Micro Edition
The Java Micro Edition is for applications used on mobile (e.g., cell phone, PDA) and embedded devices (e.g., TV tuner box, printers).
Source...