JVM, JDK, JRE和OpenJDK之间的区别是什么?
我在用Java编程时遇到了这些短语,它们之间有什么区别?
JVM, JDK, JRE和OpenJDK之间的区别是什么?
我在用Java编程时遇到了这些短语,它们之间有什么区别?
当前回答
JVM: java的虚拟机。告诉机器用Java代码做什么。不能按原样下载JVM。它被打包在其他组件中。
JRE:上面提到的其他组件是JRE。 它是JVM+其他jar创建运行时环境
JDK:包含JRE(JRE又包含JVM)。获得JDK后,不需要分别安装JRE和JVM。它包含编译器,编译你的.java文件到.class文件
其他回答
总而言之:
JRE = JVM + Java包(如util, math, lang, awt, swing等)+ 运行时库 JDK = JRE +开发/调试工具
如果你想用java开发,你需要JDK,但如果你只想运行java,你需要JRE。
Java虚拟机(JVM)是可以执行Java字节码的虚拟机。它是Java软件平台的代码执行组件。
Java开发工具包(JDK)是Oracle公司针对Java开发人员的产品。自Java引入以来,它一直是迄今为止使用最广泛的Java软件开发工具包(SDK)。
Java运行时环境,也被称为Java运行时、运行时环境
OpenJDK (Open Java Development Kit)是Java编程语言的免费开源实现。这是太阳微系统公司在2006年开始努力的结果。该实现是根据GNU通用公共许可证(GPL)许可的,有一个链接例外。
JVM:描述运行java程序的方式/资源的规范。实际执行字节代码,使java平台独立。在这个过程中,不同的平台是不同的。windows的JVM不能像UNIX的JVM那样工作。
JRE: JVM的实现。(JVM +运行时库)
JDK: JRE + java编译器等基本工具,从零开始构建java程序
JVM: java的虚拟机。告诉机器用Java代码做什么。不能按原样下载JVM。它被打包在其他组件中。
JRE:上面提到的其他组件是JRE。 它是JVM+其他jar创建运行时环境
JDK:包含JRE(JRE又包含JVM)。获得JDK后,不需要分别安装JRE和JVM。它包含编译器,编译你的.java文件到.class文件
JVM是执行Java代码的虚拟机
JRE是运行Java应用程序所需的环境(标准库和JVM)
JDK是带有开发人员工具和文档的JRE
OpenJDK是一个开源版本的JDK,不像Oracle拥有的普通JDK