Java实现平台无关性的原理
一、概述java是可以在各个平台运行的,最常见的情况就是我们在windows本地编码,将文件发布到linux系统进行发布。同一份代码运行在了两个不同的环境。这就是Java的平台无关性。二、原理如下图:通过JVM(虚拟机)实现平台无关,Java源码会被编译为字节码文件(.class文件),可以被不同平台的JVM进行解析,不需要重新编译,JVM会把字节码文件解析成本地机器码执行为什么不直接使用.jav
·
一、概述
java是可以在各个平台运行的,最常见的情况就是我们在windows本地编码,将文件发布到linux系统进行发布。同一份代码运行在了两个不同的环境。这就是Java的平台无关性。
二、原理
如下图:
通过JVM(虚拟机)实现平台无关,Java源码会被编译为字节码文件(.class文件),可以被不同平台的JVM进行解析,不需要重新编译,JVM会把字节码文件解析成本地机器码执行
为什么不直接使用.java文件,一方面因为.class是编译过的文件,不容易出错。另外就是其他编程语言转换为.class文件在jvm上执行。
javac:把Java源码文件编译成字节码文件(.class)
java:执行字节码文件
javap:反编译字节码文件,可查看更多的信息
更多推荐
已为社区贡献1条内容
所有评论(0)