Java 为什么要编译为字节码

 我来答
山之道
2017-01-16 · TA获得超过1743个赞
知道小有建树答主
回答量:347
采纳率:0%
帮助的人:258万
展开全部

Java 最初设计的时候,跨平台就是一个重要的目标,所谓「一次编写,到处运行」。而为了实现跨平台,就决定了不能像 c,c++ 那样直接把源代码编译成可执行文件,因为不同cpu,不同操作系统的指令封装格式是不一样的。

而为了实现跨平台,一般有两种方案,第一是直接执行源代码,第二是像现在 Java 这样编译成一个中间格式文件,即 class 文件,这两种方案各有优劣,现在说一下编译成中间代码的优点,class 文件相比较于 Java  源码文件,有两个优点:

  1. class 文件内容设计的更加紧凑,方便 JVM 执行,也方便网络传输(最初 JAVA 的一个重要应用就是 applet,在当年网络不是很放大的年代,程序的体积还是要挺重要的)

  2. 方便其它语言执行。现在 JVM 上就有除了 Java 外大量的第三方语言,比如 scala,Clojure 等等。其它语言只要编译成 class 文件即可像 Java 一样在 JVM 上执行。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式