java学习体系框架 附学习路线图

1.介绍Java不仅是一种编程语言,还是一系列计算机软件和规范组成的技术体系。Java的口号是“写一次,到处跑”,能行”跨平台”,因为每个平台上不同的虚拟机屏蔽了硬件的差异,而Java程序运行在虚拟机上。本文简要介绍了Java技术体系和Java虚拟机(JVM)的...

1.介绍

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

Java的口号是“写一次,到处跑”,能行”跨平台”,因为每个平台上不同的虚拟机屏蔽了硬件的差异,而Java程序运行在虚拟机上。

本文简要介绍了Java技术体系和Java虚拟机(JVM)的发展历史,然后进一步分析了Java虚拟机的细节。

PS:本文及以下JVM笔记主要来自周志明《Java虚拟机深度理解》(第3版)。

2.Java技术系统

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

传统上,由JCP官方定义的Java技术体系主要包括:

Java 程序设计语言各种硬件平台上的 Java 虚拟机Class 文件格式Java 类库 API商业机构和开源社区的第三方 Java 类库

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

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

PS: JCP代表Java Community Process,即Java Community,由业界众多技术巨头组成的社区,用于定义和开发Java技术规范。

Java技术体系包括以下内容:

3.JVM家族

“Java虚拟机”只是一个概念,还有很多产品来实现。下面简单介绍一下它的开发过程。

Sun经典/精确虚拟机

Class VM (JDK 1.0)世界上第一款商用 Java 虚拟机纯解释器方式执行 Java 代码对象查找基于句柄Exact VM (JDK 1.2)准确式内存管理:虚拟机可以知道内存中某个位置的数据具体类型

热点虚拟机

Sun/OracleJDK 和 OpenJDK 中默认虚拟机目前使用范围最广的 Java 虚拟机

因为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) ***-Bit Server VM (build 25.191-b12, mixed mode)

这里的HotSpot(TM) ***位服务器虚拟机指的是HotSpot虚拟机。

移动/嵌入式虚拟机

Java ME 虚拟机

BEA JRockit/IBM J9虚拟机

这两个虚拟机曾被称为热点虚拟机”。三个商用Java虚拟机”。

JRockit专注于服务端应用不含解释器,全部代码都由即时编译器编译后执行J9 VM职责分离与模块化优于 HotSpot VM

BEA Liquid虚拟机/Azul虚拟机

与特定硬件平台绑定、软硬件配合的专有虚拟机

阿帕奇和谐/谷歌安卓达尔维克虚拟机

这两位是“虚拟机”,而不是“Java虚拟机”。

Harmony VM未通过 TCK 认证未大规模商用Dalvik VM未遵循《Java 虚拟机规范》不能直接执行 Java 的 Class 文件

微软JVM

曾经是 Windows 系统下性能最好的 Java 虚拟机

其他的

KVM:曾在***平台上得到广泛应用Java Card VM……

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

Graal虚拟机

2018年4月,甲骨文实验室披露的黑科技:Graal VM。

Graal VM的官方名称是”通用虚拟机”还有”多语言VM & # 8221,是在HotSpot虚拟机基础上增强的跨语言全栈虚拟机。As & # 8221任何语言”操作平台,包括:

Java、Scala、Groovy、Kotlin 等基于 Java 虚拟机之上的语言C、C++、Rust 等基于 LLVM 的语言,同时支持 JavaScript、Ruby、Python 等

如图所示:

此外,从JDK 10开始,HotSpot中增加了一个新的实时编译器:Graal编译器。

如果未来某一天HotSpot虚拟机真的被取代,Graal VM很可能”Upper & # 8221。

4.摘要

本文主要介绍了Java技术体系和Java虚拟机的发展历史。只需要了解这部分,虚拟机的主要内容后面再分析。

为了复习和总结,以上内容在这里整理成思维导图:

本文来自转身以后投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/504209.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 04-14
下一篇 04-14

相关推荐

  • 不断学习才能改变人生(学习是改变命运的最佳途径)

    吴军曾经说过,“在这个不断贩卖焦虑,崇尚努力的时代,给自己一个放松的机会,是一种难得的品质。”看着身边的人,大多忙忙碌碌,仿佛只有保持一种勤奋的状态,才能化解心中的一丝焦虑。但是,努力只能让你心安理得,却很难让眼前的生活有实质性的改变。最终我发现,比努力更

    2023-07-27 19:09:01
    601 0
  • 简述知识的学习

    核心答案:知识的学习即知识的掌握,指学生在教师有目的、有计划、有步骤的指导下,积极主动的接受和占有前人所积累下来的知识经验,在头脑中构建相应的认知结构。知识的学习即知识的掌握,指学生在教师有目的、有计划、有步骤的指导下,积极主动的接受和占有前人所积累下来的

    2023-07-25 20:32:01
    752 0
  • 学习英语的软件哪个好 五大学习工具横比体验

    我侄子已经小学三年级了。最近家里人让我买个英语学习机。和公司里有孩子和开学的同事聊天后发现,英语培训相关的工具真的很多。小时候用复读机和“文曲星”,现在相关产品五花八门,各种尺寸,各种功能,很难选择。正好很多同事都愿意借出去,所以只是临时借了几个不同类型的

    2023-07-24 14:07:01
    308 0
  • 什么叫学习生活

    大多数情况下,大学生活都是很有意思的,很多人在大学可以去找寻自己真正喜欢做的事情,而不是像高中一样只能学习固定的几门科目在大学你可以接触到各种各样的人,和各种各样的人交往,一般大学也都有各种各样的社团;个人想法~~~学习生活,作为现在学生的两个重心部分,两者

    2023-07-21 10:09:01
    304 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信