Java虚拟机(JVM)是运行Java程序的软件环境,Java解释器是JVM的一部分。Java程序运行时,首先会启动JVM,JVM负责解释,执行Java的字节码(Java字节码只能运行与JVM中)。利用JVM可以把Java字节码程序和具体的硬件平台,操作系统环境分割开来,只要在不同的计算机上安装针对特定平台的JVM,Java程序就可以运行,而不用考虑当前具体的硬件平台及操作系统环境,也不用考虑字节码文件是在何种平台上生成的。JVM把这种不同软,硬件平台的具体差别隐藏起来,从而实现了真正的二进制代码级的跨平台移植。
关键因素:Java的跨平台特性是通过在JVM中运行Java程序实现的。
与此同时,值得注意的是:
Java程序 通过JVM 才具有跨平台的特性,但JVM本身并不是跨平台的。也就是说,不同操作系统的JVM是不同的,Windows平台的JVM不能用在Linux中,反之亦然。
简而言之,也就是说,不同的平台本身有着不同的JVM,是JVM成就了Java的跨平台特性。