A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郑云斌 中级黑马   /  2014-5-10 09:17  /  1309 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 郑云斌 于 2014-5-11 15:30 编辑

java不是有跨平台性吗,生成的.class文件  用java虚拟机运行  
  问:用java开发的软件  如果对方没有java虚拟机怎么办??还是根本不需要虚拟机   能解释下么??

3 个回复

正序浏览
必须要虚拟机,因为java语言比较特殊,由它编写的代码必须先经过编译,编译后不会生成特定平台的机器码,而是生成.class文件,而这种字节码不是可执行性的,必须使用java解释器来解释执行,这时JVM 是必不可少的。因此,我们可以认为java语言既不是纯粹的编译型语言,也不是纯粹的解释型语言。想要实现java语言的跨平台性,JVM是不可缺少的。
回复 使用道具 举报
必须要有JAVA虚拟机的。每个平台。都有自己的版本虚拟机。
回复 使用道具 举报
class文件的执行的前提是必须在java虚拟机里边才能执行,所以说对方平台如果没有java虚拟机的话那肯定是不行。
java的跨平台性并不是说编译好的class文件在任意一个平台都可以运行,想要运行的前提是在这个平台上必须有相应的java虚拟机。java的跨平台凌驾于操作系统之上,它只关乎java虚拟机,只要在那个操作系统之上有相应的java虚拟机那class文件便可执行。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马