JVM_总结_02_Java技术体系

1、前言

此系列随笔是针对《深刻理解Java虚拟机:JVM高级特性与最佳实践 第2版》的总结html

上一节,咱们搭建好了java的开发环境,这一节,咱们来看Java的技术体系java

2、Java技术体系

1.按功能划分

如 果 仅 从 传 统 意 义 上 来 看, Sun 官 方 所 定 义 的 Java 技 术 体 系 包 括 以 下 几 个 组 成 部 分:编程

  • Java程序设计语言
  • Java API,包括 Java API类库 和 来自商业机构以及开源社区的第三方类库
  • Class 文件格式
  • 各类硬件平台上的Java 虚 拟 机

1.1 名词解释

简称 全称 含义
Java SE Java Platform Standard Edition java 平台标准版
JDK Java SE Development Kit Java 语言的软件开发工具包(SDK)
JRE Java Runtime Environment Java运行时环境
JVM Java Virtual Machine Java虚拟机

1.2 JDK

全称:Java SE Development Kit —— Java 语言的软件开发工具包(SDK)安全

咱们能够把 Java程序设计语言Java API类库Java虚拟机这三部分统称为 JDK,JDK是用于支持Java程序开发的最小环境。oracle

JDK的组成结构以下图(来自 JDK8官方文档 首页)
在这里插入图片描述jvm

1.3 JRE

全称:Java Runtime Environment —— Java运行时环境编程语言

如上图,咱们能够把Java API类库中的Java SE API子集Java虚拟机这两部分统称为 JRE( Java Runtime Environment),JRE是支持Java程序运行的标准环境。工具

1.4 JVM

全称:Java Virtual Machine —— Java虚拟机性能

JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是经过在实际的计算机上仿真模拟各类计算机功能来实现的。开发工具

1.5 jdk、jre、jvm的关系

三者的关系为:

JDK包含了JRE
JRE包含了JVM

在这里插入图片描述

2.按业务领域划分

如 果 按 照 技 术 所 服 务 的 领 域 来 划 分, 或 者 说 按 照 Java 技 术 关 注 的 重 点 业 务 领 域 来 划 分, Java 技 术 体 系 可 以 分 为 4 个 平 台, 分 别 为:

  • Java Card

支 持 一 些 Java 小 程 序( Applets) 运 行 在小 内 存 设 备( 如 智 能 卡) 上 的 平 台。

  • Java ME( Micro Edition)

支 持 Java 程 序 运 行 在 移 动 终 端( 手 机、 PDA) 上 的 平 台, 对 Java API 有 所 精 简, 并 加 入 了 针 对 移 动 终 端 的 支 持, 这 个 版 本 以 前 称 为 J2ME。

  • Java SE( Standard Edition)

支 持 面 向 桌 面 级 应 用( 如 Windows 下 的 应 用 程 序) 的 Java 平 台, 提 供 了 完 整 的 Java 核 心 API, 这 个 版 本 以 前 称 为 J2SE。

  • Java EE( Enterprise Edition)

支 持 使 用 多 层 架 构 的 企 业 应 用( 如 ERP、 CRM 应 用) 的 Java 平 台, 除 了 提 供 Java SE API 外, 还 对 其 作 了 大 量 的 扩 充[ 3] 并 提 供 了 相 关 的 部 署 支 持, 这 个 版 本 以 前 称 为 J2EE。

3、Java的优势

Java能得到如此普遍的承认,除了它拥有一门结构严谨、面向对象的编程语言以外,还有许多不可忽视的优势:

  1. 跨平台

它摆脱了硬件平台的束缚,实现了“一次编写、处处运行”

  1. 相对安全的内存管理和访问机制

它提供了一个相对安全的内存管理和访问机制,避免了绝大部分的内存泄露和指针越界问题

  1. 热点代码检测和运行时编译及优化

它实现了热点代码检测和运行时编译及优化,这使得Java应用能随着运行时间的增长而得到更高的性能

  1. 完整的应用程序接口和第三方类库

它有一套完整的应用程序接口,还有无数来自商业机构和开源社区的第三方类库来帮助它实现各类各样的功能

4、参考资料

  1. Java Platform Standard Edition 8 Documentation
  2. 五月的仓颉——Java虚拟机1:什么是Java
  3. 弄懂JDK、JRE和JVM究竟是什么
相关文章
相关标签/搜索