What is JVM, JDK and JRE in Java?
What is JVM? Java Virtual machine (JVM) is the virtual machine that runs the Java bytecodes. You get this bytecode by compiling the .java files into .class files. .class files contain the bytecodes understood by the JVM. In the real world, JVM is a specification that provides a runtime environment in which Java bytecode can be executed. Different vendors provide different implementations of this specification. For example, this wiki page lists down different JVM implementations. Most popular implementation of JVM is Hotspot which is owned and provided by Oracle Corporation. ( Previously by Sun Microsystems, Inc. ). JVM delivers the optimal performance for Java applications using many advanced techniques, incorporating a state-of-the-art memory model, garbage collector , and adaptive optimizer . JVM comes in two different flavors – client and server . Although the Server and the Client VMs ar...