VC/MFC
VB
Delphi
C++ Builder
C/C++
Java
.NET技术
MS-SQL Server
PowerBuilder
DB2
Oracle
Web 开发
Linux/Unix社区
硬件/嵌入开发
移动平台
您的位置:
程序门
->
java
-> j2se / 基础类
java有什么好?
[
收藏此页
] [
打印本页
]选择字色:
默认
灰色
红色
黄色
绿色
橙色
紫色
蓝色
褐色
墨绿
深蓝
赭石
粉绿
淡绿
黄灰
翠绿
综红
砖红
淡蓝
暗红
玫瑰红
紫红
桔黄
军黄
烟灰
深灰
灰蓝
背景色:
默认
黑色
红色
黄色
绿色
橙色
紫色
蓝色
褐色
墨绿
深蓝
赭石
粉绿
淡绿
黄灰
翠绿
综红
砖红
淡蓝
暗红
玫瑰红
紫红
桔黄
军黄
烟灰
深灰
灰蓝
字体:[
大
][
中
][
小
]
java有什么好?
[已结贴,结贴人:youhaodeyi]
发表于:
2007-01-24 08:52:45
楼主
我在运行java程序时,比如eclipse或者jbuild,他们都是用java写的,但是奇慢无比。而且对于java程序编译成的class文件,现在都有很多反编译工具可以得到源代码。这样岂不是很不安全?而且,如果我下载了某个用java写的软件,还要在机器上安装虚拟机,这对于一个一般的用户来说,可能比较麻烦。除了在java上面的应用比较多、java可以跨平台之外,它还有什么其他的优点?为什么那么多人都选择java?
发表于:
2007-01-24 09:03:24
1
楼 得分:
0
安全``,开源~~
不愿臣服于微软,
还有个人爱好~~,
觉得有成就,
最重要的,现在做jsp比做asp拿的钱多~~
发表于:
2007-01-24 09:09:38
2
楼 得分:
0
除了在java上面的应用比较多、java可以跨平台之外
---
楼主似乎对这两点很不屑啊
说到虚拟机,.net不也是一个差不多虚拟机的dd吗,
java的优势在web,客户端是不需要虚拟机的,class也是拿不到的,想想你访问某个jsp页面,本机上需要虚拟机吗?class下载到你本地了吗?
发表于:
2007-01-24 09:13:58
3
楼 得分:
0
支持楼上的
web应用的时候是不需要下载虚拟机的..
发表于:
2007-01-24 09:39:32
4
楼 得分:
0
各人喜好,不喜欢可以做别的啊~~~~~~~~~~~~~~~~~~~~~
发表于:
2007-01-24 09:41:17
5
楼 得分:
0
java最大的优点就是开发效率高。
不是什么人都能用c++的。
但是用java的人随便都能抓到一箩筐。
但是,真正能用好java的人,又很少了。
发表于:
2007-01-24 10:27:57
6
楼 得分:
0
但是除了web之外java也有application程序,比如一个用swing界面的应用程序,要是运行它的话不是就要安装虚拟机吗?就算是web开发,如果有applet这样的控件,客户端不是也要安装java applet运行环境吗?
发表于:
2007-01-24 10:31:32
7
楼 得分:
0
路过,支持java
发表于:
2007-01-24 10:42:18
8
楼 得分:
0
当你用了段时间的java后,你自己就会感觉到会爱上它。
它的技术是在不段更新,每年几乎都有新技术推出,那会让你
永远都有想学的念头,而且java的工资肯定是比。net高的,在
大的企业级应用上面,。net就比不上java了,我们公司光一个
项目做了3年居然累积了上亿元,。net我还没有听说过。
如果你想挑战自我,如果你喜欢刺激的编程,那java准没错。
新的东西会让你眼花缭乱,冲劲倍足!
发表于:
2007-01-24 11:39:49
9
楼 得分:
0
但是如果仅仅是因为java上面新技术比较多的话,那么传统的基础型软件的开发该如何呢?在这方面java肯定是比不上c或c++的。
发表于:
2007-01-24 11:46:11
10
楼 得分:
0
怀疑lz是微软的托儿
发表于:
2007-01-24 11:51:20
11
楼 得分:
0
就开源这一点就已经很吸引人了
发表于:
2007-01-24 11:54:53
12
楼 得分:
0
不知道楼主有没有做过大型c/c++项目的跨平台,我可是做了很长时间,不说了,眼泪哗哗的啊
开源也是我喜欢它的很重要一个方面
发表于:
2007-01-24 12:37:13
13
楼 得分:
0
java够modern ,也够强大
除了慢点,也慢不了多少,人当然不能太期待完美,不求甚解嘛
发表于:
2007-01-24 13:40:53
14
楼 得分:
0
我没有做过微软的东西,一直在linux下开发,经常和c++打交道,现在有点想往java上转的趋势。但是我不明白java运行那么慢而且需要客户端安装虚拟机,为什么还是有那么多人使用。如果我写了一个java软件,不想开源,但是当客户得到class代码的时候,可以利用反编译来得到源代码,这样岂不是很不安全。再有,开源有什么好处?
发表于:
2007-01-24 13:47:23
15
楼 得分:
0
对,就是个人喜欢,每个技术都有他自己的应用场景就是了。
-----------------------
http://blog.xerik.cn (专注于java技术)
发表于:
2007-01-24 15:44:56
16
楼 得分:
0
java的优势在于web,web应用基本是java和.net的天下,用c/c++做web几乎是天方夜谈。
另外,是跨平台,搂主是否尝试将linux用c++做的系统移植到windows或者unix,没有一定的功力,更本做不到,即使有这样的功力做起来也很麻烦,而且容易出错,ace就是一个很好的例子,为了实现跨平台,使用了大量的宏,代码的可读性差,而且容易出错,虽然历时10多年了,仍然还有很多bug报告。
发表于:
2007-01-25 08:53:09
17
楼 得分:
0
如果这么说的话java在基础软件的开发上是处于劣势的。
发表于:
2007-01-25 16:22:41
18
楼 得分:
10
> > 如果这么说的话java在基础软件的开发上是处于劣势的。
是这样的。
java的运行效率依然还是个问题,虽然很多文章说java的速度已经接近c/c++,但那是也只是接近,还句话说还是有差距的。
对效率要求比较高的地方,还是用c/c++,但如果你的机器配置很高,那么还是可以用java的。
java之所以用于web,也是因为web服务器都是几十万,甚至上百万的服务器,那配置相当高。
一般pc上很少有java的应用,那是因为以目前pc的配置,跑java还是相当吃力的。jbuilder和eclipse就是很好的例子。因此,像客户端应用、桌面系统以及基础软件,依然还是c/c++的天下。
发表于:
2007-01-25 18:56:39
19
楼 得分:
10
java不是不能做客户端应用、桌面系统以及基础软件,它有十二分能力做,
问题是没有必要用java重新写一遍。这里面涉及到重新开发带来的风险问题。
如果你以前已经用c/c++写了一些软件,并且已经被成千上万的用户使用,而且由于
经过长时间的修改维护,功能已经很完善,结构已经非常复杂,即时java非常善于
写这些程序,估计你也不会各种风险重新写过。
动动脑筋想想,这不是你写了一个几百行,几千行的玩具软件,而是动辄上万行、
几十万行甚至上百万行的系统程序,请问你敢冒着这个风险重新写吗?即时这个语言非常
优秀,非常善于写这方面的程序?
因此许多人误解了java的能力,不是java它不能,而是成千上万的其他原因!技术并不主导商业决策!
请问上百万行的application server,上百万行的nasa控制系统,甚至起码上几十万行的
java ide算不算是系统软件呢?!为什么它们能用java写呢?这是因为它们是新出现的
桌面应用需求!
实际上就是java速度本身来说,也已经与c++相提并论了,今天还刚看了一篇javalobby的文章
说现在jrubby在java虚拟机上运行的速度是在c虚拟机运行的速度的两倍:
http://www.javalobby.org/java/forums/t89729.html
当然我的意思不是说java的速度已经全面超过了c,而是提醒那些对java存有速度偏见的人
java不再是你想象的那样,也是鼓励广大java爱好者,java除了你们喜爱的优秀品质外,
在速度上也不输于任何现代编程语言。
顽固的偏见、阴险的流言、狭隘的观点一旦进入人的大脑,就难以消除,这是人性的弱点。
人的顽固有时达到非常可怕的程度,人们往往难以接受自己过去是错误的,往往难以承认新的
观点和事物,即便是事实摆在面前,也会扭头不见,这种力量真是可怕。这种顽固造成了历史
多少顽固势力阻碍甚至扼杀新生事物。
发表于:
2007-01-25 19:06:54
20
楼 得分:
0
成千上万的基于java的技术,成千上万的java开源项目,
并不像某些人所说那样只能web开发,那只能说明你的java知识太浅陋了。从嵌入式系统,
到移动计算,到企业应用,到桌面应用,到航天飞机,到数据库,到集成开发环境,到编译器,
到网络开发,无处不在,无处不是主导。除了少数操作系统驱动之外,我还真难想象它不能在的
地方!
发表于:
2007-01-26 00:30:40
21
楼 得分:
0
java在web 方面比较强
相对的慢 已经被 网络的慢掩盖
发表于:
2007-01-26 09:16:33
22
楼 得分:
0
java运行速度慢,那个要从原理上来分析,网上随便搜一下都能知道了
c/c++也有用武之地的
请大家不要老是拿着两种语言做无谓的比较,要比较,那你说说
是汉语好还是英语好?是法语好还是德语好?
有时候也是需要拿开发效率来换运行效率的!
现在的社会,时间就是金钱!
所以~请大家还是继续支持java!
发表于:
2007-01-26 12:35:36
23
楼 得分:
0
但是计算机语言和人类语言有很大的不同,如果遇到一个项目,就要考虑是用什么语言来实现,这时候就必须把各种语言的优缺点列出来做一个比较。所以在语言之间做比较是必须的,而不是无畏的。
发表于:
2007-01-26 12:51:52
24
楼 得分:
0
你喜欢就学,就用。
不喜欢就算了。中国人那么多,岗位也多。虽然钱不一定多。。
也没人逼你。
-----------
不过要是工作需要,劝你还是务实一些。。
这种心态不好哦!!!^_^
发表于:
2007-01-26 13:14:21
25
楼 得分:
0
支持java,好处就像上面的人说的似的,其实还有很多很多好处,但是只有你会用java编程时,才能看到和体会到。
发表于:
2007-01-26 14:45:20
26
楼 得分:
0
可能有人误会我的意思了,看来有必要说清楚点。
从语言层面讲,java是一种编程语言(甚至是一个平台),c/c++也是一种编程语言,c/c++能做到的,java照样能做。
不管是服务器端还是客户端,桌面应用还是后台应用,java都能做。
java,由于具有垃圾收集、跨平台以及更纯正的oo,使得它非常适合做web,这是它的优势所在。
目前java的运行速度已经很快了,甚至有文章已经证明它比c/c++还快,但是它的综合运行效率依然低于c/c++,原因是占用内存太多,一个非常简单java程序都会占用10m甚至10多m的内存,复杂一点的java程序会占用上百m的内存,像jbuilder和eclipse这样的大家伙,会占用好几百m的内存,很多人之所以感觉jbuilder和eclipse慢,那是因为物理被耗尽,开始使用虚拟内存,狂读硬盘造成的。
java可以做客户端,可以做桌面应用,还可以做后台应用,但是由于java综合运行效率低的问题,在一般pc上很少有java做的软件,即使有用的人也少,因为它和用c/c++实现的同类型软件比起来,还是慢了些。
另外,我个人认为,我对java没有偏见,对c/c++也没有偏见,我只是实事求是的把它们的优势和劣势说了出来。如果c++的fans们看到我的言论,可能也会认为我对c/c++有偏见。
发表于:
2007-01-26 15:25:18
27
楼 得分:
0
muymuy:
这样说我很赞同,的确,客户端的机器通常要比服务器配置差的多,java的做客户端的弱点是它的部署和内存消耗。单就速度来说,用户感觉java的桌面软件慢一些往往是因为它自身带了一个很大的运行时环境造成的,比如它的虚拟机和bytecode以及jit后的二进制以及垃圾收集机制,这些既给java带来了优点,也同时带来内存消耗问题。操作系统在应用程序内存超过一定阀值之后必然会产生虚拟内存耗尽,然后出现著名的内存抖动现象,不断在硬盘和内存之间swap。所以目前客户端硬件限制是java桌面应用推广的一个最终要的限制因素。
当物理内存大于1g时,你会发现java程序和本地程序一样快,根本感觉不出来什么区别。我的机器配置就是1g的,我往往会运行一个netbeans ide,一个openoffice,一个firefox,一个mysql数据库,有时还会运行winamp,机器仍然飞快,而且在各个程序之间切换,没有任何读盘的声响,速度非常快。
我觉得现在有一个java客户端程序的配置门槛,最小要512m,推荐是1g内存。如果不能满足这些条件,的确java应用软件会给人响应慢的现象。
幸好,硬件升级现在的趋势是至少512m以上,随着机器配置的升高,java桌面应用的时代已经到来。
现在java6已经实现了代码段共享,也就是如果启动多个java程序,这几个程序之间共享虚拟机和类代码,只有运行时堆栈是独立的,这将大大减小内存开支。在今后的java 7等版本中,有可能真正
实现所谓mvm(multi-vm),即在一个java虚拟机上运行多个java程序,那时,多个java程序共享一个虚拟机,java程序所占用的内存只有自己的代码和运行栈,java程序就有可能和c/c++一样小,
如果能在操作系统启动时实现一次虚拟机启动,那么java的启动速度也将和c/c++一样快。
所以java有着很好的桌面应用的前景,虽然历史上java的确在桌面应用上落后很多,但是是金子总会发光的,随着硬件的提高和java自身不断的改进,java桌面应用繁荣的时代就要到来。
发表于:
2007-01-26 15:37:30
28
楼 得分:
0
其实,java现在已经能做很多传统c/c++的桌面应用,比如office软件,这可是桌面应用
软件的典型和极致了,国内永中office就是用java/swing做的,我真的看不出来和ms office
有什么区别:无论是速度、响应、界面友好程度,他们有试用版,不妨试试就知道了。这个
office可是纯java/swing的。
另外openoffice的界面部分其实也是用swing做的,sun公司自己的office产品star office(openoffice开源以前的前身)也是用swing做的。
现在浏览器也可以说是桌面应用软件的极致了吧,有一个浏览器opera mini也是java swing写的。
浏览器当然不推荐用java写,一方面部署问题(jre的安装),一方面重新开发的风险,还有就是许多
现有浏览器插件是c/c++写的,兼容问题。不用java写绝对不是因为java没有这个能力,而是其他
综合因素。
所以说java桌面应用到来一点没有吹嘘、宣传的意思,如果去国外网站留心一下,许多评论都把
java桌面应用的复兴作为近期的预言之一。
所以我们需要的是:硬件的升级、java自身的改进,当然关键是我们开发者给于的支持和信心!
发表于:
2007-01-26 15:48:30
29
楼 得分:
0
如果说java是一个美丽的少女,那么c/c++就是一个风情万种的少妇,我都喜欢。
如果少女再多一点风情,那我会更喜欢。
希望这一天早一点到来!
发表于:
2007-01-26 15:58:06
30
楼 得分:
0
wow, lady-killer in action!:)
发表于:
2007-01-26 16:02:11
31
楼 得分:
0
什么时候操作系统自带虚拟机就好了....
发表于:
2007-01-26 16:23:41
32
楼 得分:
0
什么时候操作系统自带虚拟机就好了
==================================
java开源可以说是解决这一问题的关键所在,以前java的部署之所以困难,其中最重要的原因
就是java的授权问题,授权问题是阻碍java部署的最主要障碍。现在java开源了,linux可以
自由绑定jre了,linux是开发者使用的主力平台之一。windows上面的问题主要是通过oem厂商
来解决,就是oem厂商在机器上预装java平台。目前市场新买的电脑,不管是台式机器还是笔记
本基本上都预装了java平台,所以这个部署问题正在得到解决。
java的开源犹如打开一扇解放java的大门,今后开源java产生的影响将逐步体现出来。
开源的java起码可以解决诸如以下问题:
1.java平台发布和安装问题,比如和操作系统的绑定,java应用软件的发布安装等问题。
2.吸引更多java开发者,扩大java开发社区。
3.开源社区将更有力驱动java平台开发,使java的发展更加健康。
4.java开源激发的创新,尤其是开源创新将是无可估量,比如以前所说浏览器的jre插件可能
会做的像flash插件那么大,applet有可能因此而复兴。mvm可能出现,桌面应用软件因此受益。
更多的脚本语言可能运行到jvm平台上。等等,人有多大胆、地有多大产。
java开源的影响是深远的,多年之后评价这一事件可能会和java诞生相提并论的事件,java从此
从少年时期进入成年时期。几年后也许大家才能意识这一事件真正含义。
发表于:
2007-01-26 17:12:47
33
楼 得分:
0
不懂的原因,我以前也和lz有同样的想法。
发表于:
2007-01-26 20:52:12
34
楼 得分:
0
"很多人之所以感觉jbuilder和eclipse慢,那是因为物理被耗尽,开始使用虚拟内存,狂读硬盘造成的。 "这句话应该送给觉得java慢的人,强调10000遍都不过分!
发表于:
2007-01-26 21:52:26
35
楼 得分:
0
哈哈哈哈哈..
强人很多啊.
是有点慢.不过还算ok了.没有十全十美的东西,java在web上还是很强啊.
发表于:
2007-01-26 23:44:16
36
楼 得分:
0
我感觉java是最棒的
发表于:
2007-01-27 15:09:17
37
楼 得分:
0
"很多人之所以感觉jbuilder和eclipse慢,那是因为物理被耗尽,开始使用虚拟内存,狂读硬盘造成的。 "这句话应该送给觉得java慢的人,强调10000遍都不过分!
的确实这样呀。
下一篇:
初学java遇到一个小问题^_^!!!!!!
上一篇:
jdom帮助
相关文章
谁用过oracle application server&nbs...
求助:sql语句的where子句中的变量问题(涉及中文...
想把sql语句从java代码里剥离,该怎么处理?
请帮我写个程序
帮忙看一段代码
安不上visual editor
关于用户身份验证方法
请写出将你所在地的邮政编码转换成2进制的算法(...
swing中的哪个组件是有上下按钮,调节数值的?
vtd-xml 2.2
dwr 与struts2 整合疑问
怎样提高文件流的读写速度问题
关于使用jdom提取xml文件是的一个问题
怎样把html元素的属性存入request.session()?
hibernate的log4j.properties
那位老兄看看这个 怎么 用 dom4j...
孩子保不住了,散痛苦分。
学j2ee可以做什么工作
javamail中flag.user的用法
要过年了,散分,怎么感觉最近头昏昏的
其他资讯
jsp中jstl 结合 el 的问题??
关于logic标签(在线等待)
eclipse中第二次提交自动加入/servlet
stuts中如何使用frame
[500分]求struts2 ognl上下文和action上...
关于 html 和 jsp 中的表单...
谁能帮帮我-----hibernate
匿名内部类
java错误日志
hibernate插入数据库时自增id值为null,新产生一个...
jsp访问jasperreports时的问题
为什么我的jsp中request.getcontentlength等于&n...
tomcat内存不回收的问题
急!文本框中输入的字体很难看
java在那些情况下会导致内存溢出
jsp中连接数据库ms sql sever出问题
散分 qq和年龄一起升级啦
如何根据一个url获取服务器返回的数据?
问个关于session的问题。。
求助!!
快速检索
分类导航标签a
Oracle认证与考试
VC/MFC硬件/系统
Linux/Unix社区内核及驱动程序研究区
多媒体/设计/Flash/Silverlight 开发图象工具使用
VBCOM/DCOM/COM+
Web 开发IIS
企业开发WebLogic
产品/厂家程序员大本营
.NET技术VC.NET
Web 开发非技术区
VC/MFC硬件/系统
.NET技术Delphi.net
WebSphere应用服务器/WAS
移动平台开发平台
Web 开发非技术区
最新资讯
最近新编一本《高级shader语言(glsl)从入门到精...
cisco路由器出现 %error squeezing&nb...
jsp页面播放器路径问题 急啊 在线等待...
c#求助菜鸟 屏幕键盘代码
数据窗口中能否实现改变指定行的属性
delphi高手请进
如何实现表格中的连接
wince下载问题,急急急!
asp提示这样的错误是什么错误?怎么解决?
mdi主窗体的背景怎么设置啊,要随窗体变化填充满窗...
oracle 合并多条查询记录为一条查询记录
数据库外键问题,在线等待~~
请教高手,采集某个新闻系统的问题
网站前台参考书大全,电驴下载
菜鸟求助
怎样使用c#语言在指定的电脑路径生成xml文档?
软件加密!
c语言编译时出现declaration syntax e...
c语言中怎么样跳出两层循环????急
水晶报表数据不显示问题...急!!
表格边框宽度的问题
高分请教 diy 装机
如何才能打开c:\windows\system32\config\sam这个...
java script 如何判斷location
网站被植入恶意代码,急!!!高手请看
中国足球心死
如何使用script encoder加密asp文件?具体操...
jsf:从地址栏代参数跳转页面与uicomponent组件代...
firefox问题,xmlhttp.open()不是方法
java正则表达式求救!!!
在asp中怎样新上载内容能够加注“new”标识
vb2005 这段代码很短,我把一张图片存入了m...
什么是正则表达式
建议在vc/mfc增开“图形和多媒体开发”子论坛
系统ghost的问题
关于在onpaint中刷新背景图片出错问题的解决
dbchart问题,高人看看!
执行了ado相关的语句之后浮点数精度变化?
java多线程qq群34237757
opengl中进行纹理贴图出现颜色干扰的问题,请高手...
热门点击
问个简单问题:asp.net文件为什么叫aspx?
求一个sql
bean中,string test=test+"sss"报错java.la...
求一套成熟的多人在线棋牌系统,bs/cs均可,最好...
互联网行业知名公司招聘
请问做了一个table继承customitem的在其它机型可...
生成静态页面代码,--怎么控制页面执行顺序,用sy...
请问:我的代码错了么?
请教一下 wincap 的用法
求教高手,关于海量数据文本的读取筛选问题!
弱弱的问个
关于pb类库
求msdn for vc6.0的下载地址
程序中分配端口问题..
一个datagrid显示的很难的问题,还没人能解决!
送分100:这个方案行不行,关于dll和csocket
猎头招聘,上海地区perl developer
用php可以编一个在线扑克牌的程序吗?
select so....
求大人帮我看一下一个怪异的new写法
mono下显示数据,应该使用什么gtksharp控件
關於列印問題
vb 如何支持在纸的任意地方开始打印,而不是...
[菜鸟]c#函数间传递的参数最大长度是多少?如果解...
接口都是抽象的游什么用!!
600分悬赏高难度问题。需要顶级选手解答,低手免...
datagrig双层绑定,在里面的datagrid再有一个lin...
关于domino与access数据库建立映射的odbc连接的问...
菜鸟提问:关于多项式的计算
再问vc环境下生成动态连接库的问题()!
java线程的问题
关于usb移动硬盘的编程问题,如何知道一个移动硬盘...
水晶报表的问题
密码修改的代码怎么写?(c#+sql2000)
广州大型企业招erp开发人员
谁知道 dbanywhere 最多能支持多少客户...
在powerbuilder中查询,后台是oracle数据库,如何...
关于双线程.我怎么样实时地把主线程中的数据传入...
为何访问不了类库的其他类?
请问.net有辈们一个问题???在线等!