JVM: (Java Virtual machine) is a Java VM.
JRE: (Java runtime enviromental) Java Runtime Environment, which includes the JVM and some core class libraries implemented by Java. To run a Java program, only the JVM is not working, and there is a Java base Class library. If you do not need to compile the Java source Code program, only the JRE is sufficient.
JDK: (Java Development Kit) Java Development Kit, including JRE and other Java base class libraries. It contains the development tools needed for Java development, so if you are a developer, you need a JDK to support compilation and debugging.
The relationship between three people:
Developers need to use the JDK development debugging tools to develop Java programs, Our Java files (. java files) are then compiled into Java bytecode using the compiler program in the JDK (Javac), which runs these Java bytecode on the JRE, which the JVM parses to map to the CPU instruction set or the system call of the OS.
The understanding of Java is not deep enough, will continue to do the supplement, write this article for their own convenience to view, but also hope to help everyone
The differences and connections between Java JDK, JRE, and JVM