Understand the difference and connection between JDK, JRE and JVM in three minutes

Excerpted from JavaGuide (Github star 134k star! "Java Learning + Interview Guide" covers the core knowledge that most Java programmers need to master)

JVM

The Java Virtual Machine (JVM) is a virtual machine that runs Java bytecode. The JVM has specific implementations for different systems (Windows, Linux, macOS), with the aim of using the same bytecode, they will all give the same result. The bytecode and JVM implementation of different systems are the key to "compile once, run anywhere" of the Java language.

A programming language that runs on the Java virtual machine

There is not only one JVM! As long as the JVM specification is met, each company, organization or individual can develop its own exclusive JVM. In other words, the HotSpot VM we usually come into contact with is just an implementation of the JVM specification.

In addition to the most commonly used HotSpot VM, there are also JVMs such as J9 VM, Zing VM, and JRockit VM. There is a comparison of common JVMs on Wikipedia: Comparison of Java virtual machines , you can check it out if you are interested. Also, you can find the Java SE Specifications<

Guess you like

Origin blog.csdn.net/qq_34337272/article/details/130748653