(菜鸟提问)为何众多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
有第三方工具……

...想知道java生成exe文件后,能脱离jdk么?也就是说还要不要装jdk呢...
必须要有JDK,java要是生成exe那还不如直接用C#写了,没必要的

有什么工具可以将java源代码编译成windows里的.exe可执行文件呀, 急...
1. 从www.towerj.com获得一个TowerJ编译器,该编译器可以将你的CLASS文件编译成EXE文件。注:现在已经找不到,不提供了,被人家收购了。2. 利用微软的SDK-Java 4.0所提供的jexegen.exe创建EXE文件,这个软件可以从微软的网站免费下载,地址如下:http:\/\/www.microsoft.com\/java\/download\/dl_sdk40...

反编译exe文件就是把exe还原为汇编?
1. 简单的说就是用工具打开exe文件会出现汇编代码。不能。这是反汇编的工作就是看着汇编代码用别的语言来实现。NO2. 是不是所有exe 程序 都 可以 反编译 为 汇编语言?2. 理论上说是的,不过有的程序加了壳,这样就要先脱壳这是破解的知识,他们为了保护自己的软件防止盗版。(不是多有的exe...

菜鸟求助高手,java开发环境搭建问题?
打开dos的任意窗口,输入bin里面的exe的名称,如果没有提示错误则证明配置成功 同学操作: (1):找到本地的jdk安装位置 (2):找到path环境变量查看 (3):到dos窗口中测试配置是否正确---classpath: 指定了class文件的位置 该变量默认是不存在的需要创建 我的电脑-->右键-->属性-->高级-->环境变量-->系统变量--...

java语言基础的问题
java 是现在流行的高级语言的一种。它的特点是支持面向对象、可移植性、安全性都比较好。一个java程序首先通过编译器把源代码编译为字节码(bytecode)的机器语言,然后在虚拟机中解释执行。为了方便移植,java是不生成exe(windows下的excecutable可执行文件)的,这样就可以在windows之外的系统中运行。至...

Myeclipse如何开发exe的东西
先打成jar包再打成exe即可。方法一:用Eclipse自带的打包工具Ant打包,因为要自己编写xml脚本语言,还要增加一些外部的jar,所以不推荐。方法二:用Eclpise的Export功能,这种打包方法不能把项目中的外部的jar包打进来,所以不推荐。方法三:用Eclipse的一个第三方插件fatjar生成jar文件,也是最简单最方便的...

反编译exe文件就是把exe还原为汇编?
首先了解一下概念,exe程序只是WIN下PE格式的可执行文件的一种,而所谓的计算机执行的代码只是一串二进制数,跟数据没区别,当CS,EIP指向哪,哪里就是程序,而汇编语言之所以叫最底层的语言,是因为, 汇编的每一个语法,都应对了一串二进制的指令,这也就是反汇编的原理,所以NO1.一、反编译exe程序 就...

怎样编写EXE文件,编写需要要什么软件。
要做exe文件,必须学会编程语言,比如C,C++,vb,c#,java等 用对应的编译器可以直接把代码生成exe文件,而某种语言的开发软件(IDE)一般都集成了编译器了的.如果是业余,根本没有必要学什么古老的C和流行的java,我觉得最好的是vb.我现在做项目用的是C#,但是我一旦要为自己做个自己使用的程序,我都会用回...

菜鸟提问java编译出错需要为 class、interface 或 enum
可能原因有两个:1。Java中的类名(abc)第一个字符要大写(Abc)。2。“你好,朋友!”。如果你是用搜狗输入的汉语,一些开发软件是识别不了这种汉语编码的,编译时就会报错。像jcreaterpro这个软件比较早的版本就是这样的,最简单方法是用windows自带的汉语输入法输入汉语。3.有人说,我用了abc小写...

EXE文件是怎样或者用什么软件制作的?
举例来说,C++、Java、Python等编程语言都有强大的库和框架,开发者可以利用这些工具快速开发出功能丰富的应用程序,然后通过相应的编译器和打包工具,将程序编译成exe文件,实现跨平台运行。此外,还有一些专业的应用程序开发工具,例如Visual Studio、Eclipse等,它们不仅提供了强大的代码编辑、调试功能,还...

相似回答