一、Java跨平台原理
首先我们来说一下Java代码的运行过程:
1)首先将Java文件编译成字节码(.class)文件;2)使用Java虚拟机(JVM--Java Virtual Machine)运行运行字节码文件。
上面的步骤中,第一步中,在所有的平台上生成的字节码文件都是相同的。
上面的步骤中,第二步中,在不同的平台上运行字节码文件的Java虚拟机是不同的。
Java的开发团队针对不同的平台开发出了对应版本的java虚拟机,这使得同一个Java代码文件可以再不同的平台上运行。
所以,Java能实现跨平台运行是因为有各种平台对应版本的Java虚拟机的支持。
二、了解几个名词
* JDKJDK是Java Development Kit的缩写,JDK是Java语言的软件开发工具包(SDK)。提供了Java开发、编译、运行需要的文件和环境。在JDK的安装目录下有一个Jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是Jvm,lib中则是Jvm工作所需要的类库,而Jvm和 lib合起来就称为Jre。
* JREJRE是Java Runtime Environment的缩写,JRE的内部有一个Java虚拟机(Java Virtual Machine)以及一些标准的类别函数库(Class Library),JRE是运行java字节码文件必备的工具。
* JVM JVM是Java Virtual Machine的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有针对不同平台的版本,它们可以运行相同的java代码编译的字节码文件,这使得Java代码实现的跨平台。