从官网认识 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 的虚拟机规范了,大家可以自行阅读。

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

相关推荐
小鸡吃米…几秒前
Python - 类属性
java·前端·python
沉下去,苦磨练!2 分钟前
计算一个字符串在另一个字符串中出现次数
java·开发语言
froginwe114 分钟前
Bootstrap5 表格
开发语言
前端不太难10 分钟前
Navigation State 驱动的页面调试方法论
开发语言·前端·react.js
饕餮怪程序猿13 分钟前
订单分批算法设计与实现:基于商品相似性的智能分拣优化(C++)
开发语言·c++·算法
Li_76953227 分钟前
Redis —— (五)
java·redis·后端·spring
崇山峻岭之间34 分钟前
Matlab学习记录05
开发语言·学习·matlab
狗狗摇屁屁37 分钟前
JS手写防抖
开发语言·javascript·ecmascript
派大鑫wink40 分钟前
【Day7】构造方法与 this 关键字:初始化对象的正确姿势
java·开发语言
智算菩萨40 分钟前
实战:用 Python + 传统NLP 自动总结长文章
开发语言·人工智能·python