JVM Java Virtual Machine
JVM (Java Virtual Machine) JVM is a virtual machine which work on top of your operating system to provide a recommended environment for your compiled Java code. JVM only works with bytecode. Hence you need to compile your Java application(.java) so that it can be converted to bytecode format (also known as the .class file). Which then will be used by JVM to run application. JVM only provide the environment It needs the Java code library to run applications. JRE (Java Run time Environment) JRE contains everything required to run Java application which has already been compiled. It doesn’t contain the code library required to develop Java application. JDK (Java Development Kit) JDK contains everything that will be required to develop and run Java application.