JDK, JRE, JVM in Java

In this page we discussed about, What is JDK in Java?, Java Development Kit (Details),what is JRE in Java, what is JVM in Java?, JVM Architecture


What is JDK in Java?

The Java Development Kit (JDK) in java is software which is used to develop Java applications and applets. It physically exists. It contains JRE + development tools.

JDK is an implementation of any of the Java Platforms given below, which is released by Oracle Corporation:

  • Standard Edition Java Platform
  • Enterprise Edition Java Platform
  • Micro Edition Java Platform
  • Standard Edition Java Platform

The JDK holds a private Java Virtual Machine (JVM) and a little other resource such as an interpreter/loader (java), a compiler (javac), an archiver (jar), a documentation generator (Javadoc) etc. to complete the enlargement of a Java Application.

JDK in Java

JDK: Java Development Kit (Details)

The Java Development Kit (JDK) is software which is used to develop Java applications and applets. It physically exists. It contains JRE + development tools.

JDK is an implementation of any of the Java Platforms given below, which is released by Oracle Corporation:

  • Standard Edition Java Platform
  • Enterprise Edition Java Platform
  • Micro Edition Java Platform

The JDK holds a private Java Virtual Machine (JVM) and a little other resource such as an interpreter/loader (java), a compiler (javac), an archiver (jar), a documentation generator (Javadoc) etc. to complete the enlargement of a Java Application.

What is JRE in Java?

JRE is an signifier for Java Runtime Environment. It’s additionally written as Java RTE. The Java Runtime Environment is a set of software tools which are used for manifesting Java applications. It is used to supply the runtime environment. It is the execution of JVM. It physically subsists. It holds a set of libraries + other files that JVM conducts at runtime.

The depiction of JVM is also actively redemption by other companies alongside Sun Micro Systems.

JRE in Java

What is JVM in Java?

JVM (Java Virtual Machine) is an abstract machine. It doesn’t physically exist that’s why it’s known as a virtual machine. It’s a specification that has a runtime environment, which Java bytecode can be executed. It can even run those programs that are written in different languages and compiled to Java bytecode.

JVMs are available for several hardware and software platforms. JVM, JRE, and JDK are platform dependent because the configuration of every OS is totally different from one another. However, Java is platform independent. There are three concepts of the JVM: specification, implementation, and instance.

The JVM performs the following main tasks:

  • Loads code
  • Verifies code
  • Executes code
  • Provides runtime environment

JVM provides definitions for the:

  • Memory area
  • Class file format
  • Register set
  • Garbage-collected heap
  • Fatal error reporting etc.

JVM Architecture

Let's perceive the inner architecture of JVM. It contains classloader, memory space, execution engine etc.

JVM Architecture