---
title: "Introduction to JDK, JRE, and JVM"  
description: "In this article I am telling you Introduction of JDK, JRE, and JVM"  
author: "Manoj Pandey"  
published: 2015-03-30  
updated: 2019-09-07  
canonical: https://www.mindstick.com/articles/1706/introduction-to-jdk-jre-and-jvm  
category: "java"  
tags: ["java"]  
reading_time: 2 minutes  

---

# Introduction to JDK, JRE, and JVM

##### *Before developed program in java we have need to understand concepts of JDK,*

##### *JRE and JVM in java.*

JDK-: JDK (Java Development Kit) is a bundle of software [component](https://www.mindstick.com/articles/12262/learn-how-to-make-a-component-in-magento-2). JDK is an [implementation](https://answers.mindstick.com/qa/44913/who-is-the-minister-of-statistics-and-programme-implementation) of either of Java SE, Java EE or Java ME. It includes the Java Runtime [Environment](https://answers.mindstick.com/qa/38115/according-to-the-report-released-by-the-ministry-of-environment-forests-and-climate-change-on-august-12-what-is-the-total-estimated-number-of-elephants-in-india) (JRE), an interpreter/loader (java), a compiler (javac), an archiver (jar), a [documentation](https://answers.mindstick.com/qa/30462/what-is-documentation) generator (javadoc) and other tools needed in Java development.

JRE-: JRE (Java Runtime Environment) contains JVM, class libraries, and other supporting files. It does not contain any [development tools](https://answers.mindstick.com/qa/93973/name-some-content-development-tools-you-re-familiar-with) such as compiler, debugger, etc. Actually JVM runs the program, and it uses the class libraries, and other supporting files provided in JRE. If you want to run any java program, you need to have JRE installed in the system

![Introduction to JDK, JRE, and JVM](https://www.mindstick.com/mindstickarticle/959c92ff-c273-43a0-b0fe-6b6b7d16cb38/images/853437ca-c3f7-4277-9954-173e0c8e9850.png)

JVM-: In java when we compile our code then output not in exe file but it is a class file and class file consists of java byte codes which are understandable by JVM (Java Virtual Machine). JVM interprets the byte code to machine code depending upon the underlying operation system and hardware combination. The JVM is called “virtual” because it provides a machine interface that does not depend on the underlying operating system and machine hardware architecture. JVM is platform dependent. It is responsible for all the things like garbage collection, array bounds checking, etc.

![Introduction to JDK, JRE, and JVM](https://www.mindstick.com/mindstickarticle/959c92ff-c273-43a0-b0fe-6b6b7d16cb38/images/bc0b52ef-f231-4d90-8332-f06184819d94.png)

##### What is JIT Compiler (Just- In Time Compiler)?

[JIT compiler](https://www.mindstick.com/forum/145569/what-is-the-role-of-jit-compiler-in-dot-net-framework) is a component of JRE (Java Runtime Environment). It improves the performance of Java [Application](https://www.mindstick.com/articles/12824/calculator-application-in-android)’s by compiling bytecode to native [machine code](https://answers.mindstick.com/qa/30469/what-is-machine-code) at run time. When a Java program is run JVM launched that interprets the [byte code](https://www.mindstick.com/interview/272/what-is-byte-code) and provides result. At run time, the JVM loads the class files, determines the semantics of each individual bytecode, and performs the appropriate computation.

---

Original Source: https://www.mindstick.com/articles/1706/introduction-to-jdk-jre-and-jvm

Copyright © MindStick Software Pvt. Ltd. This Markdown version is provided for developers, AI systems, and offline reading.
