Java技术体系是什么及如何概述JVM

发布时间:2021-10-23 15:50:37 作者:柒染
来源:亿速云 阅读:173

这期内容当中小编将会给大家带来有关Java技术体系是什么及如何概述JVM,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

1. 简述

Java 不仅仅是一门编程语言,还是一个由一系列计算机软件和规范组成的技术体系。

Java 的广告词为 "一次编写,到处运行",之所以能够做到"跨平台",是因为每个平台上不同的虚拟机屏蔽了硬件的差异,而 Java 程序则是运行在虚拟机之上的。

2. Java技术体系

广义上讲,Kotlin、Groovy、JRuby 等运行于 Java 虚拟机上的编程语言及其相关程序都属于 Java 技术体系。

而从传统意义上来看,JCP 官方定义的 Java 技术体系主要包括:

其中 Java 程序设计语言、Java 虚拟机、Java 类库三部分统称为 JDK(Java Development Kit),JDK 是支持 Java 程序开发的最小环境。

Java 类库 API 中的 Java SE API 子集和 Java 虚拟机统称为 JRE(Java Runtime Environment),JRE 是支持 Java 程序运行的标准环境。

PS: JCP 全称 Java Community Process,即 Java 社区,由业界多家技术巨头组成的社区,用于定义和发展 Java 的技术规范。

Java 技术体系包含的内容如下:

Java技术体系是什么及如何概述JVM

 

3. JVM家族

"Java 虚拟机" 只是一个概念,它的实现产品众多,下面简要介绍其发展历程。

 
Sun Classic/Exact VM
 
HotSpot VM


由于 HotSpot 虚拟机是目前使用最广泛的,而且是目前 OracleJDK 和 OpenJDK 的默认虚拟机,后文的内容分析主要是针对该虚拟机。


终端执行 java -version 命令如下(不同机器会有所不同,此处仅供参考):

$ java -versionjava version "1.8.0_191"Java(TM) SE Runtime Environment (build 1.8.0_191-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
 

这里的 HotSpot(TM) 64-Bit Server VM 指的就是 HotSpot 虚拟机。

 
Mobile/Embedded VM
 
BEA JRockit/IBM J9 VM

这两个虚拟机曾与 HotSpot 虚拟机并称"三大商业 Java 虚拟机"。

 
BEA Liquid VM/Azul VM
 
Apache Harmony/Google Android Dalvik VM

这两者是 "虚拟机",而非 "Java 虚拟机"。

 
Microsoft JVM
 
其他

其他还有很多各种各样的虚拟机,不再一一列举。值得注意的是一个比较新的 Java 虚拟机:Graal VM。

 
Graal VM

2018 年 4 月,Oracle Labs 公开的黑科技:Graal VM。

Graal VM 被官方称为"Universal VM"和"Polyglot VM",它是在 HotSpot 虚拟机基础上增强而成的跨语言全栈虚拟机。可作为"任何语言"的运行平台,包括:

如图所示:

Java技术体系是什么及如何概述JVM

而且自 JDK 10 起,HotSpot 中又加入了一个全新的即时编译器:Graal 编译器。

如若将来某一天 HotSpot 虚拟机真的被替换,Graal VM 很有可能"上位"。

 

4. 小结

本文主要介绍了 Java 技术体系和 Java 虚拟机的发展历程,该部分内容了解即可,后文再分析虚拟机的主要内容。

为便于回顾和总结,这里将上述内容整理成了思维导图:

Java技术体系是什么及如何概述JVM

上述就是小编为大家分享的Java技术体系是什么及如何概述JVM了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. 企业信息安全技术体系概述
  2. Java中的JVM体系结构以及JVM的不同组件介绍

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java jvm

上一篇:有哪些微服务架构框架

下一篇:linux中expand与unexpand命令怎么用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》