编译器

来源:2-7 计算机的层次与编程语言

前端工程师666777888

2021-07-25

一、C语言的编译器直接把C语言编译成了二进制文件,
JavaScript的解释器把JavaScript解释成了二进制文件。
二、也就是说编译器可以直接把程序变成二进制文件,解释器也可以直接把程序变成二进制文件。
三、java的编译器不能把java直接变成二进制文件,而是把java变成了.class字节码。
四、请问:C的编译器和java的编译器有什么不同吗?问什么都是编译器,C能直接编译成二进制而java却不能呢?

写回答

1回答

咚咚呛

2021-07-25

因为Java在运行期间需要有Java虚拟机的支持,而C语言则没有,Java需要先解析成字节码在Java虚拟机中运行,然后Java虚拟机才将字节码在计算机上运行。因为多了一个Java虚拟机的中间层,所以Java语言和C语言的运行方式很不一样。

0
1
前端工程师666777888
java可以去掉这个中间层吗?跟c语言一样,直接编译成二进制文件
2021-07-25
共1条回复

(新版)计算机基础,计算机组成原理+操作系统+网络

编程之前先学这门课,系统补足计算机基础知识,夯实编程地基

7739 学习 · 1580 问题

查看课程