Let’s learn , What is Java and JRE in Java. Java virtual Machine (JVM) is a virtual Machine that provides the runtime environment to execute java byte code. The JVM understand the bytecode only, that’s why you compile your *.java files to obtain *.class files that contain the bytecodes understandable by the JVM.
What JVM Does
- JVM perform operations like Load Class file, Verify code , provide runtime environment and execute code.
- JVM also performs Memory management, exception handling, and Java heap management.
Class Loader : Classloader loads the java classes for execution.
Heap : Heap is in which objects are allocated in runtime.
Stack : Local variables and partial results are the stores here. Each thread has a private JVM stack created when the thread is created.
Program Counter register : Program register holds the address of JVM instruction currently being executed.
Native method stack : It contains all native used in an application.
Executive Engine : Execution engine controls the executing of instructions contained in the methods of the classes.
Native Method Interface : Native method interface gives an interface between java code and native code during execution.
Native Method Libraries : Native Libraries consist of files required for the execution of native code.
What is the difference between JDK and JRE ?
The Java Runtime Environment (JRE) provides the libraries, Java Virtual Machine and other components to run applications written in the Java programming language. JRE does not contain tools and utilities such as compilers or debuggers for developing applets and applications.
The JDK also called Java Development Kit is a superset of the JRE, and contains everything that is in the JRE, plus tools such as the compilers and debuggers necessary for developing applets and applications.
Selenium Testing Video Tutorial: