Java SE(Java Platform, Standard Edition)
Java SE是Java语言的标准版本,包括Java基础类库和语法。它用于开发具有丰富的GUI(图形用户界面)、复杂逻辑和高性能的桌面应用程序。
Java EE(Java Platform, Enterprise Edition)
Java EE用于编写企业级应用程序。它是一个标准的多层体系结构,可以将企业级应用程序划分为客户层、表示层、业务层和数据层,主要用于开发和部署分布式、基于组件、安全可靠、可伸缩和易于管理的企业级应用程序。
Java ME(Java Platform, Micro Edition)
Java ME主要用于开发具有有限的连接、内存和用户界面能力的设备应用程序,例如移动电话(手机)、PDA(电子商务)、能够接入电缆服务和机顶盒或者各种终端和其他消费电子产品。
总结
Java SE:标准版(桌面程序,控制台开发......)
Java EE:企业级开发(web端,服务器开发......)
Java ME:嵌入式开发(手机,小家电......)
JDK(Java Development Kit)
JDK是Java开发工具包,是整个Java开发的核心,它集成了JRE,Java工具和Java基础类库。
例如:javac.exe,java.exe,jar.exe等。
JRE(Java Runtime Environment)
JRE是Java运行时的环境,它主要包含两个部分:JVM的标准实现、Java的一些基础类库。它相对于JVM来说,多出来的是一部分的Java类库。
JVM(Java Virtual Machine)
JVM是Java虚拟机,它只认识 xxx.class 这种类型的文件,它能够将class文件中的字节码指令进行识别并调用操作系统上的API完成动作。所以说,JVM是Java能够跨平台的核心。
JDK、JRE 和 JVM 的关系
Java的运行机制
Java编写的源程序(扩展名是".java"),需要通过Java的编译器进行编译,编译后生成与平台无关的字节码文件(扩展名是".class"),该字节码文件通过Java解析器解释执行后,转换为计算机可以识别的机器码,然后在计算机上运行。
Java的字节码文件是通过JVM进行解释执行的,不同平台的JVM是不同的,但是它们都提供了相同的接口,因此,Java的字节码文件可以在任何安装了JVM的计算机和外部设备上运行。