1. JDK :Java Development ToolKit(Java开发工具包)。JDK是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等,下面有【附】)和Java基础的类库(即Java API 包括rt.jar)。
2. JVM:Java Virtual Mechinal(JAVA虚拟机)。JVM是JRE的一部分,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统
我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。
JDK一般有三种版本:SE(J2SE),standard edition,标准版,是我们通常用的一个版本EE(J2EE),enterpsise edtion,企业版,使用这种JDK开发J2EE应用程序,ME(J2ME),micro edtion,主要用于移动设备、嵌入式设备上的java应用程序Java开发工具(JDK)是许多Java专家最初使用的开发环境
3. JRE(Java Runtime Environment,Java运行环境),运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。普通用户并不需要安装JDK来运行Java程序,只需要JRE。而程序开发者必须安装JDK来编译、tiaoshichengx
【附: JDK包含了一批用于java开发的组件】:
- javac:编译器,将后缀名为.java的源代码编译成后缀名为“.class”的字节码
- java:运行工具,运行.class的字节码
- jar:打包工具,将相关的类文件打包成一个文件
- javadoc:文档生成器,从源码注释中提取文档,注释需匹配规范
- jdb debugger:调试工具
- jps:显示当前java程序运行的进程状态
- javap:反编译程序
- appletviewer:运行和调试applet程序的工具,不需要使用浏览器
- javah:从Java类生成C头文件和C源文件。这些文件提供了连接胶合,使Java和C代码可进行交互。[2]
- javaws:运行JNLP程序
- extcheck:一个检测jar包冲突的工具
- apt:注释处理工具[3]
- jhat:java堆分析工具
- jstack:栈跟踪程序
- jstat:JVM检测统计工具
- jstatd:jstat守护进程
- jinfo:获取正在运行或崩溃的java程序配置信息
- jmap:获取java进程内存映射信息
- idlj:IDL-to-Java编译器。将IDL语言转化为java文件[4]
- policytool:一个GUI的策略文件创建和管理工具
- jrunscript:命令行脚本运行