Java is one of the most popular programming language that are used in developing environments today. We can find out how JVM (Java Virtual machine), JRE ( Java Runtime Environment) and JDK (Java Development Kit) each play a role in java development process.
JDK
The Java Development Jit(JDK) is a cross platformed software development environment , it offers a collection of tools and libraries it is useful to build a java applications. In this we use JRE and JVM .
- DEFINITION : It is a software development kit used to develop applications in Java
- WHAT IT CONTAINS : It contains tools for developing, debugging , and monitoring java code.
- WHAT IT ENABLES: The JDK enables developers to create java program that can be executed and run by the JRE and JVM .
- PLATFORM INDEPENDENCE : JDK is a platform dependent for different platforms.
- IMPLEMENTATION: JDK = JRE+ Development tools
JRE
The Java Runtime Environment (JRE) it is implemented by JVM and along with libraries and other files needed to run java applications. JRE is software that java programs require to run correctly ,Java is a computer language that powers many current web and mobile applications.
- DEFINITION : It is a Java bundle which provides Java class libraries with necessary components to run java code.
- WHAT IT CONTAINS: It contains class libraries and other supporting files that JVM requires to execute the program.
- WHAT IT ENABLES: The JRE is the part of Java that creates the JVM.
- PLATFORM INDEPENDENCE : JRE is a platform dependent.
- IMPLEMENTATION : JRE = JVM + Libraries to run the application.
JVM
The Java Virtual Machine (JVM) it is a specification that offers runtime environment and allows the execution of java bytecode.JVMs are available for many software and hardware platforms.
- DEFINITION : JVM executes java bytecode and provides an environment for executing it.
- WHAT IT CONTAINS : software development tools are not included in JVM.
- WHAT IT ENABLES: It is java platform component that executes source code.
- PLATFORM INDEPENDENCE: JVM is a platform independent.
- IMPLEMENTATION : JVM = only runtime environment for executing the java bytecode.