Java Tutorial

Basic Concepts

Object Oriented Concepts

Coming Tutorials

>Home>Java Tutorial>Difference Between JDK vs JRE vs JVM

Java Tutorial

Basic Concepts

Object Oriented Concepts

Coming Tutorials



Java Development Kit (JDK) vs Java Runtime Environment (JRE) vs Java Virtual Machine (JVM)

Following diagrams depicts the scope or uses of JDK, JRE and JVM.

Java Development Kit (JDK)

Java development kit is a Java application development environment which has different useful tools required by a java developer to develop a Java application. The JDK includes the Java Runtime Environment, tools like the Java compiler and the Java APIs for compiling, debugging, executing the java applications and java applets. If you want to develop the java applications then you will need to install a JDK.

The JDK comes as an installable; you can download a JDK from this Download JDK

In the windows OS, you can find the JDK at C:\Program Files\Java\jdk1.8.0_60

The JDK contains the JRE in C:\Program Files\Java\jdk1.8.0_60\jre folder

The JDK contains the tools in C:\Program Files\Java\jdk1.8.0_60\bin folder

The JDK contains the java APIs in C:\Program Files\Java\jdk1.8.0_60\lib folder

Java Runtime Environment (JRE)

If you want to run Java programs, but not develop them, then you require the Java Runtime Environment, or JRE only and not the JDK. The JRE comes as an installer; it will contain a JVM and APIs.

The JRE installer is available to download at Download JRE

If you have a JDK installed then you will not require installing a separate JRE to run the Java applications, because the JDK comes with an inbuilt JRE.

Java Virtual Machine (JVM)

A Java Virtual Machine (JVM) is an implementation of the Java Virtual Machine Specification which executes the Java programs. The JVM internally uses different components to run a java program, one of these is an Interpreter; Interpreter interprets / converts the byte code into processor dependent machine code to execute the instructions. The JVM also has a JIT (Just In Time) compiler which converts the similar statements from the byte code into the processor dependent machine code at the same time. To learn more about the JVM visit to Java Virtual Machine Page.

Share the article to help your friends