(菜鸟提问)为何众多java编译器都没有生成EXE文件的功能?

为什么JAVA不象C或VB那样,写好代码后可以直接生成EXE可执行文件?

我用eclipse写JAVA,写好后只能生成JAR文件,要运行还得进CMD,直接点击为什么运行不了?

面向对象的JAVA到底和非面向对象C有什么不同和优势?

谢谢了

第1个回答  2008-10-29
java的要在jre下才能运行的,其实就是java虚拟机,是属于操作系统上面的另一个系统,没有jre java程序是没有办法编译和执行的。C和VB则是在操作系统上的一个开发平台而已。简单看就是java是 java- >IDE开发工具- >java虚拟机- >操作系统;C和VB是C/VB- >IDE开发工具- >操作系统。java编译之后是.class的自解码文件,打包以后是.jar的文件,在windows里直接双击.jar文件和直接双击.exe效果是一样的,不过如果你编写的程序没有返回值,那对不起,程序不是一闪而过就是没有反应。
面向对象相对于面向结构的优势在于分析问题和处理问题的方式不一样,很多书里都会有,太长就不做陈述了,有兴趣自己搜索下。java的优势在于,跨平台性,同一个程序几乎不需要任何修改就可以在linux或是windows操作系统间移植,这一点是其他语言不能比拟的。其次,java编译完以后生成的自解码文件可以直接执行,这样就不像其他面向对象一样需要执行一次解释一次,所以一旦程序被编译那执行速度是很快的(还是没有C快,因为有java虚拟机),所以在做网络编程的时候java的优势是显而易见的,所以java做的桌面程序并不是很突出,在web上的成就却是其他语言不能比拟的(微软出了个.net和java虚拟机原理差不多)。而桌面编程主要还是C++的,C语言因为它接近硬件又便于学习和使用的特性往往用来编写操作系统。本回答被提问者采纳
第2个回答  2008-10-29
Java就是不能生成EXE的因为她是生成class文件的 这样就可以一次编译跨平台试用了。EXE的只能在windows下面才能被识别。 至于你说的jar的不能双击运行我就不清楚为什么了
第3个回答  2008-10-29
jar是可以做成双击运行的
第4个回答  2008-10-29
简单来说,是因为java是跨平台的。
第5个回答  2008-10-29
有第三方工具……

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网