为什么JAVA运行要用到JAVA虚拟机,而 C 语言不用呢??

我不是计算机专业的,能说得通俗易懂,简单一些吗??

我跟你清除点说,java是一次编译到处运行的,听说过这句话吧。其实java这个到处运行的特性被java虚拟机来完成了,所以java必须要虚拟机。从另一个角度,java程序首先被编译成*.class文件,然后,虚拟机在将*.class文件编译成本地机器能执行的机器语言,这步是由java虚拟机完成的;与c不同,c编译时一步到位,被直接编译成本地机器语言,所以一般来说c的执行速度要比java快,因为它少了一次编译。当然,c语言也就不可能实现一次编译到处运行这种特性了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-25
因为java是边编译边运行的,java虚拟机可以实现java的平台,硬件无关性,而c语言是编译成可执行程序,当然就不用了啊
第2个回答  2013-08-25
JAVA是一个虚拟平台,C语言是一个程序语言。不同的。C语言不基于JAVA。而JAVA本来就是虚拟机项目。大概是这样理解吧。C语言是写程序的,不一样。。本回答被网友采纳
第3个回答  2020-04-03
按我理解,C语言属于机器比较底层的语言,所以很多程序能够直接运行。JAVA平台是用C语言编写的,包括Python等,它们是用C语言重新定义组织了自己的语言环境,特点是简单、易用…,缺点就是需要编译成C语言或其它底层语言再运行,慢了很多。比如,实现一个处理,C语言可能要用上百行代码才能实现,JAVA只需一个属性几行代码就实现,实际是JAVA在后台用了多行代码实现,它帮你简化。这些简化,C语言一样可以用自定义函数来实现,熟练,C语言更强大,能实现一切。只是大家侧重不一样,JAVA、Python在用户应用层面的开发可能更方便,C语言侧重系统底层开发。
第4个回答  2013-08-25
语言的编程机制不一样,JAVA是跨平台语言,不同的系统下,可以用虚拟机翻译成相应系统的代码。
严格来讲这么说不准确。
相似回答