为什么java支持跨平台

各位兄弟姐妹答案请详细点,这是我的考试题目。... 各位兄弟姐妹答案请详细点,这是我的考试题目。 展开
 我来答
jiaozi95
2015-09-11 · TA获得超过1685个赞
知道小有建树答主
回答量:1648
采纳率:100%
帮助的人:419万
展开全部
因为Java程序编译之后的代码不是能被硬件系统直接运行的代码,而是一种“中间码”——字节码。然后不同的硬件平台上安装有不同的Java虚拟机(JVM),由JVM来把字节码再“翻译”成所对应的硬件平台能够执行的代码。因此对于Java编程者来说,不需要考虑硬件平台是什么。所以Java可以跨平台。
因为它有虚拟机(JVM),JAVA程序不是直接在电脑上运行的,是在虚拟机上进行的,每个系统平台都是有自己的虚拟机(JVM),所以JAVA语言能跨平台。
1, java代码不是直接运行在CPU上,而是运行在java虚机(简称JVM)上的。
2,java是先把java文件编译成二进制字节码的class文件,jvm就解释执行class文件。
3,就是因为java是运行在jvm上的,所以它的代码就能不经修改,就能在不同平台的jvm上运行(在UNIX用UNIX的jvm,在linux上用linux的jvm,在windows上用windows的jvm)
假如用windows移植到UNIX,只需把java文件是UNIX的jvm上编译成class文件,然后用jvm运行就可以了。
Jseven_jy
2010-07-28 · TA获得超过8122个赞
知道大有可为答主
回答量:2499
采纳率:100%
帮助的人:1145万
展开全部
因为java程序是在java虚拟机上运行的。。

不同的平台不同虚拟机。。这样就实现了跨平台。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
beckham1917772
2010-07-28 · TA获得超过2143个赞
知道小有建树答主
回答量:504
采纳率:0%
帮助的人:537万
展开全部
一般我们所谓的执行档
内容是一堆人类看不懂得机械码 是拿来给机器看的
因为他要直接指挥计算机去做事情 所以得写成机器可以执行的语言
问题是

每一台机器有自己的语言 每一个平台也有自己的语言
所以在不同的机器上 我们要用不同的执行档

那 Java 怎么达成一个程序 跨平台执行的呢~~

其实, Java 是在各种平台之上建立起他自己的平台
也就是所谓的 JVM (Java 虚拟机器)
再用 JVM 来执行他的类别档
因为不管在甚么平台上 实际执行类别档的都是 JVM
所以就可以达到 跨平台的目的

123456
类别档程式
______________________________|_________________________________
| | | |
Windows95/98版JVM WindowsNT系列JVM Linux版JVM Unix版JVM
| | | |
Windows95/98 WindowsNT/2000 Linux Unix

所以要执行 Java 的程序 就必须先在机器上启动 JVM 才行
而启动 JVM 的程序 就是所谓的 JRE

参考资料:http://www.ccw.com.cn/soft/apply/os/htm2005/20051025_148HV.htm
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
大时代暑
2010-07-28 · TA获得超过2.5万个赞
知道大有可为答主
回答量:4111
采纳率:0%
帮助的人:4845万
展开全部
因为虚拟机跨平台
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qiao7qx
2010-07-28 · 超过31用户采纳过TA的回答
知道答主
回答量:144
采纳率:0%
帮助的人:111万
展开全部
采用unicode编码是一个原因
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式