JDK、JRE、JVM三者的关系
前言
JDK、JRE、JVM是什么?它们之间有什么关系。
一、Java的运行机制
- Java简介
高级语言分为编译型语言、解释型语言,而Java是先编译成字节码文件,然后在将字节码解释执行。
1)编译型:C、C++…
2)解释型:Javascript…
- Java运行机制
1)编辑,生成Java文件(.java)
2)编译,JDK中的 javac 将 Java 文件编译成字节码文件(.class)
3)解释,JRE中的解释器会将字节码文件解释成JVM能识别的指令。
4)执行,JVM执行解释了的指令。(这是一个边解释边执行的过程)
注:类装载器之后需要字节码校验,所以Java具有安全性的特性。
二、JVM、JRE、JDK
- JVM(Java virtual Machine),执行字节码的虚拟计算机,为数不尽数的Java程序屏蔽了不同操作系统的复杂性。(这也是它的核心优势之一,跨平台,可移植性强)
JVM自定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。建立于OS之上,这也导致它速度慢了一点,但屏蔽不同OS的运行的差异,实现“一次编译,随处运行”。
- JRE(Java Runtime Environment),包含运行Java程序所必要的文件、库函数、JVM。(运行Java的必要软件JRE,轻量级)
- JDK(Java Development Kit),Java开发工具包,包含JRE、编译器、调试器。有了JDK,不仅能运行Java程序,还能编写及编译Java程序。
- 总结
1)开发Java,需JDK。
2)运行Java,需JRE。
三、JDK安装
总结
1)Java的运行机制
2)JVM、JRE、JDK的区别与联系
3)JDK的安装等一条龙服务
参考文献
[1] 尚硅谷Java SE–高淇