学习java基础免不了要与JDK,JRE,JVM打交道,具体三者之间的含义和关系是什么呢?
1.JDK
JDK,全称是Java Development Kit,翻译为java语言开发工具包,JDK是整个java开发的核心,包括了JVM、Java编译器、大量的java程序调试和分析的工具软件以及Java基础API,里面是Java类库和Java的语言规范,java软件的开发,调试,代码优化,程序调优都是需要JDK的。
2.JRE
JRE,全称是Java Runtime Environment,翻译为java 运行时环境,是运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库,使用java语言编写的程序,可以在有JRE环境的机器上运行。
3.JVM
JVM,全称是Java Virtual Machine,翻译为java 虚拟机,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。java语言实现跨平台运行与JVM密不可分。
4.关系
JVM是JRE的一部分,JRE是JDK的一部分,JRE相对于JDK来说,裁剪了java程序编译和调试的部分。JDK具有编译程序,调试程序的工具包,而JRE只是运行时环境,只提供运行环境,不提供编译和调试环境。
参考:百度百科,https://www.zhihu.com/question/20317448