了解java三大版本 以及 JDK、JRE、JVM

java三大版本比较

1. javaSE(标准版)

javaSE 是java标准版的简称,其定位是个人计算机应用(应用原生界面比较ugly) 全称:Java Platform Standard Edition 主要用于开发和部署桌面、服务器以及嵌入设备和实时环境中的Java应用程序。例如,Java应用程序开发平台Eclipse。

2. javaEE(企业版)

javaEE 是java企业版的简称,其定位是服务器端应用 (目前应用最广泛的版本)全称:Java Platform Enterprise Edition 是在JavaSE的基础上构建的他提供Web 服务、组建模型、管理和通信API.可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和web2.0应用程序。

3. javaME

javaME 是java微型版的简称,主要定位是移动产品和车载产品等(基本没有使用,大部分移动产品使用Android)全称:Java Platform Micro Edition Java ME为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME包括灵活的用户界面、健壮的安全模式、许多内置的网络协议以及对于动态下载的连网和离线应用程序的丰富支持。基于Java ME规范的应用程序只需要编写一次,就可以用于许多设备,而且可以利用每个设备的本级功能。

JVM JRE 与 JDK 的关系

JVM

JVM 全称 Java Virtual Machine 是java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。

也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行。

屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。

JRE

JRE 全称 Java Runtime Environment 是java运行时环境,这里面包含了运行java程序所需要的所有类库,一台机器上只有安装了jre才可以运行java程序

JRE 是包含 JVM的,并且还包含了一些运行java程序所需要的类库和资源文件等。

JDK

JDK 全称 Java Development Kit 是java开发工具包,是Sun Microsystems针对Java开发员的产品。JDK 中包含了很多关于java程序开发的工具,例如编译工具javac,文档生成工具javadoc等等等等。

同理,JDK是包含JRE 和 JVM 的,并且在此基础上还包括了一些开发工具,调试工具,以及用于管理程序的管理工具等。

包含关系

JRE = JVM + 基本类库(系统类库) + 支持文件

JDK = JRE + 开发工具包

Java核心优势:一次编译,到处运行,其跨平台运行的核心在于 JVM

### JDKJREJVM 的概念及区别 #### 1. JDK (Java Development Kit) JDKJava 开发工具包,主要面向开发者设计。它包含了编译器 (`javac`)、调试器和其他开发所需的工具和库文件。通过 JDK开发者能够编写、测试并部署 Java 应用程序。值得注意的是,JDK 中已经内置了 JRE,因此安装 JDK 后可以直接运行 Java 程序[^1]。 #### 2. JRE (Java Runtime Environment) JREJava 运行时环境,专注于提供运行已有的 Java 程序所需的支持。它的核心组成部分是 JVMJava 虚拟机)。对于仅需运行 Java 程序而不涉及开发工作的场景来说,单独安装 JRE 就足够了。 #### 3. JVM (Java Virtual Machine) JVM 是一个抽象的计算机模型,定义了一种规范来解释或执行 Java 字节码。它是 Java 实现跨平台特性的核心技术所在。无论是在 Windows、Linux 或 macOS 上,只要存在对应的 JVM 实现,就可以无缝运行同一份 Java 程序[^4]。此外,JVM 提供了许多高级特性,比如内存管理、垃圾回收机制以及 JIT 编译优化等功能[^5]。 #### 区别总结 | **名称** | **描述** | **用途** | |----------|----------------------------------------------------------------------------------------------|--------------------------------------------| | JDK | 包括编译器、调试器及其他开发工具;包含完整的 JRE | 面向开发者,用于创建新的 Java 应用 | | JRE | 只包含运行现有 Java 程序所需要的类库及相关资源 | 用户端用来启动和操作 Java 应用 | | JVM | 抽象层面上的一个虚拟处理器,负责加载 .class 文件并将它们转换成底层硬件可理解的形式 | 执行字节码,保障 Java 程序能在多种平台上运作 | ```java public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); // 此代码由 JDK 编译后,在 JVM 上运行。 } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值