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

admin 2025-05-09 09:41:58 阅读:23 评论:0
1.前言 Java 不仅仅是一门编程语言,还是一个由一系列计算机软件和规范组成的技术体系。 Java 的广告词为 &“一次编写,到处运行&”,之所以能够做到&”跨平台&”,是因为每个平台上不同的虚拟机屏蔽...

1.前言

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

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

本文简要介绍 Java 技术体系及 Java 虚拟机(Java Virtual Machine, JVM)的相关发展历程,后文再进一步分析 Java 虚拟机的详细内容。

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

2. Java技术体系

广义上讲,Kotlin、Groovy、JRuby 等运行于 Java 虚拟机上的编程语言及其相关程序都属于 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),JRE 是支持 Java 程序运行的标准环境。

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

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

3. JVM家族

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

Sun Classic/Exact VM

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

HotSpot VM

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

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

Mobile/Embedded VM

Java ME 虚拟机

BEA JRockit/IBM J9 VM

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

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

BEA Liquid VM/Azul VM

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

Apache Harmony/Google Android Dalvik VM

这两者是 &“虚拟机&”,而非 &“Java 虚拟机&”。

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

Microsoft JVM

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

其他

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

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

Graal VM

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

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

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

如图所示:

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

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

4. 小结

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

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

版权声明

本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。文章内容、图片素材等内容均为用户上传,仅供学习参考。如有侵犯您的版权,请联系我们,本站将在三个工作日内改正、删除。

生肖标签: 打一最佳生肖 打一最佳动物 打一生肖动物 打一正确生肖 是指什么生肖 代表什么生肖 解一生肖 猜一生肖

分享:

扫一扫在手机阅读、分享本文

热门文章
  • 一朝成名打一个生肖,答案释义解释落实

    一朝成名打一个生肖,答案释义解释落实
    答案:龙 释义解释落实 释义: 一朝:早晨,指短时间。 成名:名声大噪,知名度提高。 解释: 龙是一种传说中的动物,常被形容为神圣、威严、强大的生物。在中国传统文化中,龙是吉祥的象征,代表着权势、地位和荣誉。因此,“一朝成名”比喻一个人在很短的时间内名声大噪,获得了极高的知名度和地位。 落实: 在现实生活中,“一朝成名”往往与以下情况有关: 获得重大的奖项或荣誉。 创作出广受好评的作品...
  • 震撼揭秘!中国试飞取得重大突破,美媒称其为军事实力的里程碑时刻

    震撼揭秘!中国试飞取得重大突破,美媒称其为军事实力的里程碑时刻
    震撼揭秘!中国试飞取得重大突破,美媒称其为军事实力提升中国在国际上的军事地位。 美国《纽约时报》也表示,歼-35战机的试飞成功引起了美国的担忧。美国担心中国正在快速发展其军事实力,这可能对美国的全球军事优势构成挑战。 中国坚守和平发展,维护地区稳定 面对美国的担忧,中国外交部发言人赵立坚表示,中国始终坚持和平发展道路,致力于维护地区和平稳定。中国发展军事力量的目的是自卫,不针对任何国家。 赵立坚强调,中国的发展是和平的发展,中国不会走军事扩张...
  • 年度反腐大片明起开播!孙志刚、唐一军、崔茂虎等出镜忏悔

    年度反腐大片明起开播!孙志刚、唐一军、崔茂虎等出镜忏悔
    年度反腐大片明起开播!孙志刚、唐一军、崔茂虎等出镜忏悔 2025-01-04 11:12:51 来源:央视新闻客户端 选稿:周玮 由中央纪委国家监委宣传部与中央广播电视总台央视联合摄制的四集电视专题片《反腐为了人民》,将于1月5日至8日在中央广播电视总台央视综合频道晚8点档播出,央视新闻新媒体平台同步播发。 江山就是人民,人民就是江山,人民立场是中国共产党的根本政治立场。新时代新征程,全面从严治党永远在路上,党的自我革命永远在路上,必须以党的自我革命...
  • 昆山再迎重大调整!最强县级市书记人选尘埃落定

    昆山再迎重大调整!最强县级市书记人选尘埃落定
    背景 昆山是江苏省苏州市下辖的一个县级市,素有“最强县级市”之称。近年来,昆山经济发展迅速,社会事业不断进步,在全国县级市中排名靠前。 重大调整 近日,昆山市委组织部发布人事任免公告,宣布原苏州市吴江区委书记于伟国同志任昆山市委书记,原昆山市委书记周伟同志不再担任现职。 于伟国简历 于伟国,男,汉族,1969年7月生,江苏江阴人,1995年8月加入中国共产党,1991年7月参加工作。曾任吴江区委书记、区人大常委会主任,苏州市委常委、市纪委书记...
  • 吴晨:城镇化下半场,应降低制度性成本

    吴晨:城镇化下半场,应降低制度性成本
    吴晨:城镇化下半场,应降低制度性成本   中国科学院大学讲席教授,北京市建筑设计研究院总建筑师、总规划师,首钢集团总建筑师吴晨“ 在中国城镇化的下半场,应该更好地释放和降低这种制度性成本,让市场具有更大活力。   中房报记者 许倩丨北京报道“当第一批老旧小区改造完之后,实际上我国还有年均10亿平方米到20亿平方米的住区会成为新的老旧小区,这些常态化的更新如何来买单?吴晨认为,住房合作社是一个非常重要的思路。12月30 日,由中国房地产报、中国城市与区域治理研究院联合...