JDK、JRE、JVM、SE、EE、ME的区别

一、JDK
        Java Development Kit,Java 软件开发工具包。JDK是提供给Java开发人员使用的,包含了JRE和一些Java开发工具,如编译工具(javac.exe)、打包工具(jar.exe)等。所以安装了JDK就不需要再安装JRE了。作为Java语言开发者,我们必须安装JDK,没有JDK,我们是没有办法编译和运行Java代码的。包括SE、EE、ME三个版本。

1. Java SE(Java Platform,Standard Edition,Java 标准版)。J它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。Java SE 是做电脑上运行的软件。

2. Java EE(Java Platform,Enterprise Edition,Java 企业版)。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。Java EE 是用来做网站。

3. Java ME(Java Platform,Micro Edition,Java 微型版)。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。Java ME 是做手机软件的。

二、JRE
        Java Runtime Environment,Java 运行环境。JRE包括Java虚拟机和Java程序所需的核心类库。如果要想运行一个开发好的Java程序,只需要在计算机中安装JRE即可。

三、JVM
        Java Virtual Machine,Java 虚拟机。JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码,就可以在多种平台上不加修改地运行。JVM是Java语言跨平台(这里的“平台”是指不同的操作系统)的基础,要想在不同的操作系统上运行Java程序,就需要在不同操作系统上安装对应的JVM。所以,JVM有Windows版本、MAC版本、Linux版本等。

相关推荐

  1. “==”和“equals”区别

    2023-12-08 17:26:03       42 阅读
  2. == 和 equals 区别

    2023-12-08 17:26:03       37 阅读
  3. #{}和${}区别

    2023-12-08 17:26:03       23 阅读
  4. &&和&区别

    2023-12-08 17:26:03       14 阅读
  5. ==与===区别

    2023-12-08 17:26:03       11 阅读
  6. &与 && 区别

    2023-12-08 17:26:03       11 阅读
  7. TCP/UDP区别

    2023-12-08 17:26:03       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-08 17:26:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-08 17:26:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-08 17:26:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-08 17:26:03       20 阅读

热门阅读

  1. Requests库详解、详细使用、高级用法

    2023-12-08 17:26:03       34 阅读
  2. 折半查找(数据结构实训)

    2023-12-08 17:26:03       41 阅读
  3. 博客摘录「 C语言之二维数组赋值」

    2023-12-08 17:26:03       28 阅读
  4. kali常用命令

    2023-12-08 17:26:03       35 阅读
  5. springboot快速入门

    2023-12-08 17:26:03       38 阅读
  6. 虚拟化之Stage2地址翻译

    2023-12-08 17:26:03       36 阅读
  7. 对音频打上标签,从标签开始播放

    2023-12-08 17:26:03       38 阅读
  8. oceanBase存储返回多个值

    2023-12-08 17:26:03       38 阅读
  9. 【android开发-20】android中notification的用法讲解

    2023-12-08 17:26:03       30 阅读