Introduction
JDK stands for Java Development Kit. It is a software package used to develop, compile, debug, and run Java applications.
If you want to create a Java program, you need tools that can convert your Java source code into something the computer can execute. The JDK provides these tools.
For example, when we write:
class Main {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
the JDK provides the tools required to compile and run this program.
What is JDK?
JDK (Java Development Kit) is a collection of software tools required for Java application development.
It contains:
- JRE (Java Runtime Environment)
- JVM (Java Virtual Machine)
- Java compiler
- Debugging tools
- Other development utilities
In simple words:
JDK = Tools needed to develop Java applications
Main Components of JDK
1. JDK
JDK is the complete development kit.
It is mainly used by Java developers to write and develop applications.
JDK
├── JRE
│ └── JVM
└── Development Tools
2. JRE
JRE stands for Java Runtime Environment.
It provides the environment required to run Java applications.
JRE
└── JVM
JRE contains the JVM and Java libraries required for running Java programs.
3. JVM
JVM stands for Java Virtual Machine.
It is responsible for executing Java bytecode.
For example:
Java Code
↓
Compiler
↓
Bytecode (.class)
↓
JVM
↓
Program Output
The JVM helps Java achieve its famous feature:
Write Once, Run Anywhere
A Java program can run on different operating systems as long as a compatible JVM is available.
Java Compiler
One of the most important tools in the JDK is the Java compiler.
The Java compiler is called:
javac
Suppose we have a file:
Main.java
We can compile it using:
javac Main.java
This creates:
Main.class
The .class file contains Java bytecode.
We can then run it using:
java Main
JDK Compilation Process
The basic process is:
Main.java
↓
javac
↓
Main.class
↓
JVM
↓
Output
For example:
Step 1: Write Java code
class Main {
public static void main(String[] args) {
System.out.println("Hello Java");
}
}
Save the file as:
Main.java
Step 2: Compile
javac Main.java
Step 3: Run
java Main
Output:
Hello Java
Important JDK Commands
javac
Used to compile Java source code.
javac Main.java
java
Used to run a Java application.
java Main
javadoc
Used to generate documentation from Java source code.
javadoc Main.java
jar
Used to create and manage Java archive files.
jar
jdb
Used for debugging Java applications.
JDK vs JRE vs JVM
| JDK | JRE | JVM |
|---|---|---|
| Used for development | Used for running Java programs | Executes bytecode |
| Contains JRE | Contains JVM | Part of JRE |
| Contains development tools | Contains runtime libraries | Converts bytecode into machine-level instructions |
| Used mainly by developers | Used to run applications | Executes Java programs |
The relationship can be remembered as:
JDK
↓
JRE
↓
JVM
Why Do We Need JDK?
JDK is needed when we want to develop Java applications.
For example, if you want to create:
- Web applications
- Desktop applications
- Backend applications
- Android-related Java projects
- Enterprise applications
- Java-based tools
you need a Java development environment.
The JDK provides the compiler and other tools required for development.
How to Check JDK Installation
After installing the JDK, open Command Prompt or Terminal and type:
java -version
You can also check the compiler:
javac -version
Example:
java version "21..."
javac 21...
The exact version depends on the JDK installed on your computer.
JDK Versions
Java has many versions, such as:
- Java 8
- Java 11
- Java 17
- Java 21
- Java 25
Some Java versions are LTS (Long-Term Support) releases.
For learning Java, it is useful to understand that the JDK version determines which Java language features and tools are available.
Advantages of JDK
1. Complete Development Environment
JDK provides the tools needed to develop Java applications.
2. Platform Independent
Java bytecode can run on different platforms using a compatible JVM.
3. Development Tools
It provides tools such as:
javac
java
javadoc
jar
jdb
4. Supports Large Applications
Java and the JDK are widely used for developing large-scale applications.
5. Debugging and Documentation
JDK provides tools that help developers debug programs and create documentation.
Simple Real-Life Example
Think of JDK like a complete workshop for a mechanic.
- JDK → Complete workshop
- Compiler → Tool that prepares the program
- JRE → Environment where the program can operate
- JVM → Machine that executes the program
Therefore, if you want to build Java applications, you need the JDK.
Conclusion
JDK is an important part of Java development. It provides the compiler, runtime environment, JVM, libraries, and various development tools required to create Java applications.
The most important concept to remember is:
JDK → Development
JRE → Running
JVM → Execution
Top comments (0)