初识Java

Java三大版本

  • JavaSE:标准版(桌面控制,控制台开发......)

  • JavaME:嵌入式开发(手机,小家电......)

  • JavaEE:企业级开发(web端,服务器开发......)

JDK、JRE、JVM之间的关系

JDK

Java Development kit是用于开发Java应用程序的软件开发工具,包括了(JRE)、解释器(Java)、编译器(javac)、java归档(jar——一种软件包文件格式)、文档生成器(Javadoc)等工具。

JRE

Java Runtime Enviroment提供Java应用程序执行时所需的环境,有Java虚拟机(JVM)、核心类、支持文件组成。

Jvm

Java Virtual Machine(Java虚拟机)有三成含义,分别是:

  • JVM规范要求

  • 满足JVM规范要求的一种具体实现(一种计算机程序)

  • 一个JVM运行实例,在命令提示符下编写Java命令以运行Java类时,都会创建一个JVM实例。

关系

JDK=JRE+开发工具

JRE=JVM+类库

JDK与JRE之间的交互

  • 首先JDK中编译器(javac)对代码进行编译——存储在.java文件中的源代码被编译成字节码存储在.class文件中。

  • 运行过程发生在JRE中

  1. Class Loader加载执行程序所需的全部类

  2. Byte Code Verifier验证代码的格式和合法性

  3. Interpreter加载并执行字节码

JVM的工作方式

Java程序运行时JVM时JRE的一个实例,也就是runtime interpreter。它执行的是.class文件,它会将字节码翻译为平台可以执行的机器码。

总结

Java程序的开发过程为:

  • 我们利用JDK(调用Java API)编写出Java源代码,存储于.java文件中

  • JDK中的编辑器javac将Java源代码编译成Java字节码,存储于.class文件中

  • JRE加载、验证、执行Java字节码

  • JVM将字节码解析为机器码并映射到CPU指令集或OS的系统调用