JDK
- JDK (Java Development kit) , Java开发工具包,是java的核心所在,包含了 JRE (Java运行环境) 和 Java开发工具、Java类库 等。
- Java开发工具 有:Java编译器 (javac.exe ,将.java编译为.class )、Java运行工具 (java.exe) 、打包工具 (jar.exe) 、文档生成工具 ( javadoc.exe )等。
- 如果想要开发Java程序 (敲代码) ,要安装 JDK 。
- 如果想要运行Java程序,只需安装 JRE 即可。
- JDK使用对象:
开发人员,满足开发Java程序 (敲代码)需求。
关于JDK的更详细内容请查看 :
jdk下常用文件夹
JRE
- JRE (Java Runtime Environment) , Java运行时环境,它是运行java程序所必须的软件环境,包含了 JVM (Java虚拟机) 和 Java类库 (/Java标准库)等。
- JRE使用对象:
运行Java程序的用户,不能用于创建新的程序 (不能敲代码,只能运行代码),即不能将Java源代码编译成字节码等。
如果你不是开发人员,只想运行Java程序,那么可需安装JDK,只安装JRE即可。
JVM
- JVM (Java Virtual Machine),Java虚拟机,JVM是跨平台的关键。因为它屏蔽了不同操作系统之间的差异,可以让Java程序能在不同的操作系统 (windows、linux等)运行。
- JVM 配合Java字节码文件(.class文件) : 能实现跨平台 (跨平台性)。
- 在不同的操作系统上将同一份Java源代码编译成Java字节码文件时,编译而成的: Java字节码文件是一样的,因为字节码文件是面向 JVM进行编译的,而不是操作系统。字节码文件放在不同操作系统上的 JVM就能运行。
- JVM能将Java源代码编译为字节码,再将字节码解释成操作系统的本地机器码,最后将本地机器码以映射到操作系统上运行。
- 后缀名为.java的文件为源文件,后缀名为.class的文件为字节码文件。
- java源文件经过javac命令(javac.exe : Java编译器)可以被编译为字节码文件 。
三者的区别
JDK是Java开发工具包,包含了JRE、Java开发工具、Java类库等。
JRE是Java运行环境,包含了 JVM和 Java类库等。
JVM是Java虚拟机,Java能实现跨平台性。实现一次编写,处处运行的关键 :字节码文件 + JVM。