当前位置:编程学习 > JAVA >>

java编译还是解释

JAVA先编译成CLASS文件再在运行时被解释? 这么做是为了适应多平台? 这么做有什么好处和坏处? 这么做不是会降低程序的运行速度吗
追问:那就是说
Java能够做到同一个程序代码
能够通过JDK在电脑上手机上等平台上运行?
那如果是这样,假如我把生成的CLASS文件在电脑上用别的软件再次编译后生成机器码或者说可执行文件的话,就跟C等编出来的一样咯?
答案:java先编译成CLASS文件,然后再由java虚拟机进行解释执行,这样只要安装了java虚拟机(也就是JDK)都可以运行java,这么做就是是为了适应多平台。其次对于java虚拟机(jdk)其实就是个中间件,它可以通过消息代理带屏蔽操作系统及底层的差异,这也为程序的可移植性提供了方便。

坏处就是你说的运行速度会变慢,很多java编译器(解释器)都是先把java翻译成C++然后由C++执行的,你说效率能抵得上C++或是C吗?C和C++都可以直接操控计算机内存,这是一把双刃剑,经常会带来内存溢出的问题。而java在语言体系上就解决了这个问题,不会有数组越界、溢出问题,但这一切都是以时间作为代价换来的!
其他:1.对
2.是
3.可以。
 

上一个:JAVA 里的Canvas类怎么用? 我画了个矩形,但是不知道怎么把它删除,求高手,最好能个我个例子。
下一个:JAVA里的一个小问题

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,