从官网认识 JDK,JRE,JVM 三者的关系

点击下方关注我,然后右上角点击..."设为星标",就能第一时间收到更新推送啦~~~

JVM 是一些大厂面试必问点,要想解决 OOM、性能调优方面的问题,掌握 JVM 知识必不可少,从今天开始,将为大家介绍 JVM 的常用知识。

1、Java 官网

Java 官网主页:https://docs.oracle.com/en/java/index.html

Java 历史版本的官方文档地址:https://docs.oracle.com/en/java/javase/index.html

Java 语言自 1995 年发布以来,Java 已经更新到 JDK 20了。目前绝大多数主流企业使用的版本是 JKD 8,点击之前版本列表中的 JDK 8,打开后如下:

开发人员指南:https://docs.oracle.com/javase/8/docs/index.html

2、JDK,JRE,JVM的关系

从以上的架构图中可以看出,JDK 包含了 JRE 和 JVM,JRE 包含了 JVM。

**JDK(Java SE Development Kit):**JDK 包括 JRE 和命令行开发工具,如编译器和调试器,程序开发者必须安装 JDK 来编译、调试程序。

**JRE(Java SE Runtime Environment):**JRE 提供了 Java 运行时环境以及 JVM运行需要的类库。如果只是运行 Java 程序,可以只安装 JRE,不用安装 JDK。

**JVM(Java Virtual Machines):**Java 虚拟机是 JRE 的一部分,它具有指令集并在运行时操作内存,是一种抽象计算机,不同的操作系统使用不同的 JVM,JVM 是 Java 实现跨平台的核心,负责解释 class 文件为平台无关的字节码。

3、JVM 规范

Java 语言和虚拟机规范:

https://docs.oracle.com/javase/specs/index.html

这个页面里有 Java 6 到 Java 20 版本的所有语言和虚拟机规范,从中我们可以找到 Java SE 8。

点开以后,就能看到 Java 8 的虚拟机规范了,大家可以自行阅读。

后面将为大家介绍类加载机制与类加载器

相关推荐
float_六七1 小时前
IntelliJ IDEA双击Ctrl的妙用
java·ide·intellij-idea
能摆一天是一天2 小时前
JAVA stream().flatMap()
java·windows
CodeCraft Studio2 小时前
PDF处理控件Aspose.PDF教程:使用 Python 将 PDF 转换为 Base64
开发语言·python·pdf·base64·aspose·aspose.pdf
零点零一2 小时前
VS+QT的编程开发工作:关于QT VS tools的使用 qt的官方帮助
开发语言·qt
颜如玉3 小时前
🤲🏻🤲🏻🤲🏻临时重定向一定要能重定向🤲🏻🤲🏻🤲🏻
java·http·源码
程序员的世界你不懂4 小时前
【Flask】测试平台开发,新增说明书编写和展示功能 第二十三篇
java·前端·数据库
星空寻流年4 小时前
设计模式第一章(建造者模式)
java·设计模式·建造者模式
lingchen19065 小时前
MATLAB的数值计算(三)曲线拟合与插值
开发语言·matlab
gb42152875 小时前
java中将租户ID包装为JSQLParser的StringValue表达式对象,JSQLParser指的是?
java·开发语言·python
一朵梨花压海棠go5 小时前
html+js实现表格本地筛选
开发语言·javascript·html·ecmascript