Components of Java
Java has several key components which include:
- Java Development Kit (JDK):
- A software development environment used for developing Java applications and applets. It includes the Java Runtime Environment (JRE) and development tools such as, an interpreter/loader (Java), a compiler (javac), an archiver (jar), a documentation generator (Javadoc), and other tools needed for Java development.
2. Java Runtime Environment (JRE):
- It is a set of software tools which provides libraries, Java Virtual Machine (JVM), and other components to run applications written in Java. It is a part of the JDK but can be downloaded separately.
3. Java Virtual Machine (JVM):
- JVM is a part of JRE (Java Runtime Environment) that executes Java bytecode and provides platform independence.
- JVM is an abstract machine which abstract the computing machine that enables a computer to run a Java program. The JVM performs three main tasks: loads Java bytecode, verifies it, and executes it.
Editions of Java
Java comes in three primary editions, each serving a different purpose:
- Java Standard Edition (Java SE):
- Provides the core functionality of the Java programming language. It includes basic libraries for networking, security, database access, GUI development, and XML parsing. Java SE is the foundation upon which all other Java technology is based.
2. Java Enterprise Edition (Java EE):
- Extends Java SE with additional libraries and tools for building large-scale, multi-tiered, scalable, and secure network applications. Java EE includes technologies like Servlets, JSP, EJB, JPA, JMS, and others, primarily aimed at enterprise-level applications.
3. Java Micro Edition (Java ME):
- A subset of Java SE, designed for the development of applications for mobile devices, embedded systems, and other small-scale devices. Java ME includes a flexible user interface, robust security, built-in network protocols, and support for networked and offline applications.