JVM&JDK&JRE的区别
JVM
又叫Java虚拟机,是运行Java字节码的虚拟机。JVM有针对不同系统的特定实现(Windows、Linux、macOS),目的是使用相同的字节码,它们都会给出相同的结果。字节码和不同系统的JVM实现是Java语言“一次编译,随处可以运行”的关键所在。
JDK和JRE
JDK(Java Development Kit),它是功能齐全的Java SDK,是提供给开发者使用的,能够创建和编译Java的程序。他包含了JRE,同时包括一些编译器javac等其它工具。
JRE(Java Runtime Environment)是Java运行时的环境。它是运行已经编译好的Java程序所需要的所有内容的集合,其中包括JVM(Java虚拟级)、Java基础类库。
总的来说:JDK包含了JRE,同时还包括javac,javadoc,jdb等工具,是能够创建java项目和调试的程序。JRE则主要包括JVM和Java主要的基础类库。