您的位置:首页 > 编程语言 > Java开发

java.exe和javaw.exe有什么区别?

2018-01-24 15:02 225 查看
先来科普的介绍下java.exe和Javaw.exe的基本概念和理论知识:

java.exe和javaw.exe是Sun Microsystems公司的相关网络协议软件。

1、java.exe:运行java程序

2、javac.exe:编译的,生成.class文件

3、javaw.exe:跟java命令相对的,运行java命令时,会出现并保持一个console窗口,程序中的信息可以通过System.out在console内输出, 
而运行javaw,开始时会出现console,当主程序调用之后,console就会消失;(注意这里的console是eclipse的控制台,而不是dos控制台  
cmd)

4、javaw.exe主要用于启动基于GUI的应用程序。

5、java.exe执行应用日志再在控制台显示输出与错误信息。

综上所述:

java.exe是需要控制台即cmd的,而javaw.exe是不需要控制台即cmd的

举例进一步说明:

因为程序员写的代码如果调用了system.out.println("XXX");,是需要控制台即cmd输出的。而javaw.exe是不会将system.out.println("XXX")输出到控制台的,因为javaw.exe不调用控制台即cmd

重点关注:

既然javaw.exe不能将System.out.println("XXX");输出到控制台,那么为什么Eclipse使用了javaw.exe却可以将System.out.println("XXX");输出到Eclipse自己的控制台?

真实的情况如下:

Eclipse使用javaw.exe,然后将System.out.println("XXX");输出的内容拿到,然后push到Eclipse的某个临时文件中.txt,然后Eclipse自己的控制台去读取这个临时文件,这样System.out.println("XXX");中内容不就打印到Eclipse自己的控制台了嘛!

题外知识科普:

 javaw.exe 是存放在 "C:\Program Files" 下的子目录 - 一般是
C:\WINDOWS\system32\ 或 C:\Program Files\Java\jre1.5.0_02\bin\。

 切记: javaw.exe 也可能是恶意软件所伪装,尤其是当它们存在于
c:\windows 或 c:\windows\system32 目录。

 它这个不是 Windows 系统文件。 进程是不可见的。 这个进程打开接口连到局域网或互联网。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javaw.exe