Java Virtual Machine (JVM)

At the heart of Java is the JVM which is responsible for interpreting compiled Java code (byte code) and executing it on different operating systems and hardware platforms. Java is platform-independent thanks to the JVM, which means Java can run on any machine that has a compatible JVM.

Java Runtime Environment (JRE)

The JRE is an implementation of the JVM. It includes the tools and necessary libraries (such as java.lang, java.util, java.net) for executing Java programs. These libraries are loaded at runtime. If you only want to execute a Java program, you can install the JRE without needing the JDK, as there is no development or compilation of Java source code required.

Java Development Kit (JDK)

The JDK is a superset of the JRE, as it includes the JRE along with a Java compiler, debugger, and core classes. The JDK is platform-specific software, and it has separate installers for Windows, macOS, and Unix systems.

Java Platform, Standard Edition (Java SE)

Java SE provides the core functionality of the Java programming language. It includes the Java Development Kit (JDK) and Java Runtime Environment (JRE), which contain essential libraries, tools, and APIs for general-purpose programming. Java SE is used for developing desktop applications, server-side applications, and applets. It is the basic building block for all other editions of Java.

Java Platform, Enterprise Edition (Java EE)

Java EE is built on top of Java SE and provides an API and runtime environment for developing and running large-scale, multi-tiered, scalable, reliable, and secure network applications. Java EE includes additional libraries and features, such as Servlets, JavaServer Pages (JSP), Enterprise JavaBeans (EJB), and Java Message Service (JMS). It is designed for enterprise-level applications and is commonly used for building web-based and distributed systems.


Back to parent page: Java Platform

Web_and_App_DevelopmentProgramming_LanguagesJavaJVMJREJDKJava_SEJava_EE

Reference: