java与平台无关的原因 |
您所在的位置:网站首页 › java编译器将java源程序编译成 › java与平台无关的原因 |
Java字节码
Java源程序(.java)要先编译成与平台无关的字节码文件(.class),然后字节码文件再解释成机器码运行。解释是通过Java虚拟机来执行的。 java要运行要经过如下步骤① Java源文件—->编译器(工具)—->字节码文件 ② 字节码文件—->JVM(工具)—->机器码 c++运行步骤c++源文件–>编译器 -->机器码 问题在于,每个平台所认识的0101序列并不一样。在Windows上也许某个指令是0101,在Linux下也许是1010,因此不同的平台必须使用不同的编译器来编译你的代码,而在Windows平台上编译好的程序,也不能直接拿到Linux等其它平台上执行,而必须经过重新编译的动作,让编译器将你的程式编译为该平台可以执行的指令。 Java具有平台的无关性。使用Java虚拟机实现这一特点。Java编译时,并不直接翻译为相依于某平台的0101指令,而是翻译为中介格式的位元码(byte code)。Java 的原始码文件格式名为*.java,经过编译器翻译过后,会变成*.class的格式文件位元码。如果想要执行这个位元码档案,目标平台上必须安装有JVM(Java Virtual Machine)。JVM会将位元码翻译为相应平台支持的语言。 不同的平台必须安装该平台相对应的JVM。而对于JVM而言,位元码文件就是它的可执行文件,也就是格式为.class的文件。Java代码程序,理想上 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |