java入门的初学者必须得对java中JDK JRE JVM的关系有所了解。本篇文章对JDK JRE JVM之间的关系和区别进行了详细的讲解和总结。
一、JDK
JDK(Java Development Kit)Java开发工具包,JDK中包含了编译工具(javac),文档注释工具(javadoc),打包工具(jar)等一系列开发工具。当然也包括JRE(java运行环境)。简单来说JDK就是JRE和java开发工具的集合。
JDK目录分析
bin目录:包含了java的开发程序(就是我们之前提到的javadoc、jar、javac等)。
lib目录:本地的资源库,一些依赖包。
jre目录:对,就是我们说的JRE,是java的运行环境(JDK是开发环境)它包含了JVM和java的核心类库。
include目录:JVM和java的交互文件。
二、JRE
JRE(Java Runtime Environment),java程序的运行环境,由javac.exe把.java文件翻译成.class文件后才能由JRE运行。JRE包含了JVM(java虚拟机),和java的核心类库,是java语言编写程序的运行所需要的软件基础环境,是给要执行java程序的使用者使用的。如果我们只想运行一个开发完成java程序,我们只需要下载JRE就OK了。
JRE的目录分析
bin目录:就是我们的JVM。
lib目录:java的核心类库。
三、JVM
JVM(Java Virtual Machine),Java虚拟机,是一个虚构出来的计算机,通过模仿计算机的各种功能(内存,寄存器,栈,垃圾回收等),负责解释和执行命令。JVM是java实现跨平台的核心,不同的平台JVM都是不同的。只要给不同的平台安装了不同的JVM,编译后的java字节码就可以在相应的平台运行。
图解:
四、总结
JDK= JRE + java的各种开发工具。
JRE=JVM + java的核心类库。