QA Stacks

What is JDK, JRE and JVM..?



JDK (Java Development Kit) : Java Developer Kit contains tools needed to develop the Java programs, and JRE to run the programs. The tools include compiler (javac.exe), Java application launcher (java.exe), Appletviewer, etc

JDK = JRE + Development Tools


JRE (Java Runtime Environment) : Java Runtime Environment contains JVM, class libraries, and other supporting files. It does not contain any development tools 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. JRE = JVM + Java Package Classes + Runtime Libraries


JVM (Java Virtual Machine) : JVM is an abstract machine. It is a specification that provides runtime environment in which java bytecode can be executed. JVM’s are available for many hardware and software platforms. JVM is platform dependent because configuration of each OS differs and this makes java Platform Independent. JVM performs following main tasks: - - Loads code - Verifies code - Executes code - Provides runtime environment Libraries