Java JDK, API, IDE, and Java language specification
Java JDK: There are many versions of Java SE which rapidly increase time by time. The latest version of Java SE is 8. Sun releases each version of SE with a Java Development Toolkit (JDK). For Java SE 8, the Java Development Toolkit is called JDK 8 (also known as Java 8 or JDK 8).
Java IDE: JDK consists of a collection of separate programs, each program invoked from a command line, for testing and developing Java programs. Besides JDK, the programmer can use a Java development tool (e.g., Eclipse, Net-Beans, and Text-Pad) software that provides an integrated development environment (IDE) for rapidly developing the Java application programs. Compiling, editing, debugging, building, and online help are integrated into one graphical user interface. Just enter the source code in the IDE window or open an existing file in the IDE window, then click a button to compile and run the program.
Computer languages have some strict rules for their usage. If you do not follow these rules when writing a computer program, the computer will be unable to understand it. The Java language specification and Java API define the Java standard.
API: The application program interface (API) contains predefined interfaces and classes for developing Java application programs. The Java language specification is still stable, but the API is still expanding time by time. At the Sun Java Website (java.sun.com) you can download and view the latest version of the Java API.
Java language specification: The Java language specification is a technical definition of the language that includes the semantics and syntax of the Java programming language. The complete Java language specification can be found at this official link: java.sun.com/docs/books/jls.
Java SE, EE, and ME: Java is a more efficient and powerful language that can be used in many ways. Java introduced in three editions: Java Standard Edition (Java SE), Java Enterprise Edition (Java EE), and Java Micro Edition (Java ME). Java SE can be used to develop the client-side standalone applications (Desktop) or Java-applets. Java EE can be used to develop server-side applications (Web), such as JavaServer Pages and Java servlets. Java ME can be used to develop applications for mobile devices applications, such as cell phones. We’ll use Java SE to introduce Java programming.