码迷,mamicode.com
首页 > 编程语言 > 详细

浅谈java跨平台

时间:2014-09-28 00:27:40      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:java跨平台   java虚拟机   jvm   

    都说java是跨平台的,但为什么是跨平台呢,.我稍微解释一下。

    java语言编写的程序要先经过编译的,但这个编译不是生成特定平台的机器码,而是生成一种与平台无关的字节码。

    java语言里负责解释执行字节码文件的是Java虚拟机(Java Virtual Machine)。JVM是运行字节码文件的虚拟计算机。所有平台上的JVM向编译器提供相同的编程接口,而编译器只需面向虚拟机,生成虚拟机能理解的字节码,然后由虚拟机解释执行。之所以说Java跨平台是因为字节码与平台无关,但不同平台的JVM是不同的,但它们向编译器生成的Java字节码程序都提供了相同的接口,但它们适应不同的平台的接口不同。JVM是Java跨平台的关键,只要为不同平台实现了相应的虚拟机,那编译生成的相同的字节码文件就可以被解释后执行了。相同的字节码在不同的平台上是不能直接运行的,要通过JVM这个转换器来解释执行。

    总结:Java跨平台,原因是相同的字节码文件在不同的平台上的不同的Java虚拟机解释执行的,没有虚拟机,就只好“呵呵”了。

  

浅谈java跨平台

标签:java跨平台   java虚拟机   jvm   

原文地址:http://blog.csdn.net/lee_duke/article/details/39620667

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!