java的跨平台原理

梦想的初衷 提交于 2020-01-26 14:53:16

跨平台的实现涉及Java虚拟机(Java Virtual Machine,简称 JVM)。

JVM是一个软件,不同的平台有不同的版本。我们编写的Java代码,编译后会生成 .class 文件(字节码文件)。Java虚拟机负责将字节码文件翻译(转译)成特定平台下的机器码然后运行。也就是说,只要在不同平台上安装对应的JVM,就可以运行字节码文件,运行Java程序。

在这个过程中,Java程序没有任何改变,仅仅是通过JVM,就能在不同平台上运行,真正实现了“一次编译,到处运行”。

JVM是实现跨平台的关键。

注意:编译的结果不是生成机器码,而是生成字节码,字节码不能直接运行,必须通过JVM翻译成机器码才能运行。不同平台下编译生成的字节码是一样的,但是由JVM翻译成的机器码却不一样

所以,运行Java程序必须有JVM的支持,因为编译的结果不是机器码,必须要经过JVM的再次翻译才能执行。

跨平台的是Java程序,不是JVM。

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!