要了解Java程序运行原理,首先需要了解知道jre、jdk、jvm这三者是什么,他们之间又有什么联系。
JRE(JavaRuntimeEnvironment,Java运行环境),也就是Java平台。所有的Java 程序都要在JRE下才能运行。
JDK(Java Development Kit,Java开发工具包)是程序开发者用来编译、调试Java程序用的开发工具包。JDK工具也是Java程序,也需要JRE才能运行。为了保持JDK的独立性和完整性,在JDK的安装过程中,JRE也是安装的一部分。所以,在JDK的安装目录下有一个名为jre的目录,用于存放JRE文件。
JVM(JavaVirtualMachine,Java虚拟机)是JRE的一部分。它是一个虚构出来的计算机,是**在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java语言重要的特点就是跨平台运行。使用JVM就是为了支持与操作系统无关,实现跨平台。
Java培训开发的运行大致分为以下三步:编写源文件、编译以及运行。
1、编写源文件
编写的代码,称为“源代码”或“源码”。一般情况下,会把源代码保存到后缀名为.Java的文本文件里,这样的文件叫源文件。为了方便,会保持文件名与类的名字一致(包括大小写)。
2、编译
源文件是程序员编写的,能够轻松识别每一行代码的意思,但是,在计算机中,CPU只能识别二进制指令。所以,现在要做的工作就是,需要在源文件和计算机指令之间进行转换。由于Java语言的结构和特性,设计者们先将源文件转换成一种特殊的二进制文件,然后将这个二进制文件交给Java运行时环境(JRE)去执行。转换成二进制文件的过程,叫做编译(这个过程使用了 Javac 命令),生成的二进制文件,叫做字节码文件(后缀名是 .class )。如Test.Java经过编译就会生成Test.class。这个过程全部由Java编译器自动完成,不需要程序员进行任何特殊操作。
3、运行
Java培训程序的开与运行原理,并不是将字节码文件(.class文件)简单的交给操作系统去执行,那是因为不同的操作系统中数据的大小、范围和计算方式有很大不同,会导致同一段代码在不同系统之间运行效果差别很大,这不是设计者们想要看到的。