为什么在Netbeans里java 动态创建类的这个java类他说主类名无效,我在eclipse里面都可以用啊&#

酷勤网 C 程序员的那点事!
浏览次数:次
作者:perryhg
网上看到有人居然写了篇文章《用NetBeans与弃Eclipse》(http://dev.csdn.net/article/69/69624.shtm)&有感而发,写了篇回复,全文如下:开放性、运行速度、自动化程度好像都是eclipse略胜一筹,至于java语言的新功能嘛,也只是个时间问题,java&1年多才发布一个新版本,除了5.0因为改动了class的spec以外,其他版本升级都没有那么困难。我用了netbeans&大半年了,最近转到Eclipse,总体感觉如下:首先,netbean给我的感觉:慢,明显得慢,启动慢,退出也慢,让我感觉机器好像降低了一个档次似的,我的机器已经是P4&2.8&1G内存,但是相比eclipse的轻巧和快速,还是无法忍受netbeans的慢,尤其是等了好久终于出现图形界面了,还要看着这个界面很久等待扫描classpath让人更无法忍受。其次,eclipse插件众多,有xmleditor,有subversion支持,&有UML建模工具,数据库工具,struts,&hibernate都可以用工具来生成有关xml文件,如果不是这样的话,单就手工修改这些xml文件,工作效率就降低不少,完全体现不出他们的优势。eclipse下面还有javascript的开发和调试插件,写web项目的时候特别方便。相比较插件的数量,netbeans远不及eclipse第三,netbeans的程序全部用ant进行管理,这样在导入一些非netbeans开发的项目的时候造成困扰,netbeans不会自动通过识别其他的ant脚本设置的classpath来进行package的导入,每次都要手工设置许多包,特别不方便,另外,如果不使用netbeans自动创建的ant脚本,就无法进行程序debug。相比较之下,eclipse即支持ant,又不强制你使用ant,你可以用ant来管理你的project,来生成,调试,打包,生成文档等等。当你不需要ant的时候,比如要进行调试,可以跳过ant的管理直接进入调试模式。别的不说,单就eclipse的ant编辑工具就非常出色,当你在outline里面点击列出来的property名和task名的时候,会自动帮你定位到build.xml中相应的位子,修改特别方便,用netbeans的时候,我总是在找这个task在什么地方。最后,且不说eclipse可以实现perl/python/php/c#等其他语言的IDE,就单说java程序源代码编写方面:虽然netbeans最早支持了jdk5的语法,可是当你有些地方可以用到新格式的代码的时候,netbeans也不会给你任何提示,比如generics,如果你创建了一个支持autoboxing的变量并且输入了内容,eclipse会给你一个友好的提示,说定义需要parametised,但是netbeans却什么都不会说。错误纠正:当发生错误的时候,netbeans会在源码编写窗口提示错误,但是eclipse不仅提示你错误,还会有assisstance帮助你自动修正错误,可以帮你创建变量,和定义,比如:s&=&"abc".getBytes();如果你从未曾定义s,当你用ctrl+1呼叫代码助手的时候,代码助手就会问你你是要作什么,如果你选择“本地变量”,就会自动完成byte[]&s&=&"abc".getBytes();如果你选择“创建field”,就会自动帮你在class里面定一个private&byte[]&s;如果你选择来自parameter,就会自动在方法的参数里面追加byte[]&s简直太方便了。自动完成:你在写任何变量名的时候,只要写出前几个字母,然后按ctrl+space(在中文操作系统中,这个快捷键和呼叫中文输入法冲突,但是可以用alt+/代替)就会出现许多以你输入的部分开头的选项,比如St(ctrl+space)&就会自动完成String,这个功能netbeans也有,可是netbeans的自动完成快捷键都是事先定义的,而且都是静态的。netbeans没有的是,你自己创建的类名,field名已经变量名都是自动完成的对象!比如:Connection&dbc(ctrl+space)&就会自动完成dbconn还有就是eclipse的自动完成还可以帮你自动创建class和methodMyClass&mc&=&new&MyClass();mc.run();当这个MyClass根本不存在的时候,自动完成会自动帮你创建MyClass类和run()方法,当然,自动完成还有一种经常发生的情况是拼写错误,eclipse会自动列出拼写最接近的几个类名/方法名/变量名让你选择,快速修正错误。eclipse的intelisense和autocompletion都是大小写不敏感的,虽然java程序命名有一定的习惯,但是有时候还是有些区别,比如到底是XMLUtil还是XmlUtil,不同的人写出来还是有些差异,在netbeans里面,大小写必须完全一致,才能自动完成,而eclipse里面,不管你输入的是大写小写,这个名字始终存在,当你选中以后还自动帮你纠正大小写问题。导入:netbeans和eclipse都支持自动导入,比如你用了一个File&f&=&new&File("a.txt");用netbeans和eclipse都会帮你自动import&java.io.F,但是netbeans的import完以后,由于文件头部的行数发生变化,导致所有代码的行的位置也都一起移动,使得你copy一段代码到你程序以后,一旦import,你不得不往上/下翻滚屏幕找你的代码,而eclipse默认就将import部分折叠,不管添加或者移除import都不会影响代码的位置。Exception&handling:eclipse会在写程序的时候就告诉你哪里发生了exception,并且会自动生成throw语句或者try/catch语句,当你在try里面写出了含有新的exception的代码的时候,会自动添加一个catch,关键是,把Exception的名字都帮你写好了,netbeans则完全没有提示,非要到编译了以后,再回来找哪里没有try或者没有throw,就是从下面的console&display区域copy这个Exception的名字也经常不成功。随着eclipse新版本的发出,netbeans的优势越来越少,从eclipse&con2005的结果可以看出,bea、borland、sybase都加入了elipse的董事会.&&目前大概唯一用得到netbeans的地方是调试别人的jsp程序,因为netbeans自带了tomcat(tomcat也是在sun的主导下开发的),其他的,我实在看不出有什么比eclipse强的地方。每次升级jdk都导致netbeans不能运行,因为netbeans在/etc/netbeans.conf里面写死了jdk的文件的绝对地址,非要手工用文本编辑器修改这个文件才能让netbeans启动正常,而eclipse几乎不受jdk版本升级影响。综上所述,你现在明白我为什么用了大半年netbeans之后,又转到了eclipse上了吧,我这里写的都是些很粗浅的功能,但是已经可以见得端倪,我相信更多高级功能的开发上eclipse还会有更多的优势,比如MDA和AOP的实现等。虽然netbeans的出现比没有netbeans以前已经使得java开发更迈进一步了,但是仍然无法吸引很多程序员,尤其是微软的程序员加入java的阵营,和vs.net相比,netbeans确实太慢了,而且即不好看,也不好用,甚至有点让人望而生畏,还让人以为java就是和netbeans一样消耗资源和速度慢的象征。swt的分歧只是一个借口而已,很多程序根本就没涉及到图形界面,就算用了GUI,eclipse下仍然可以用swing开发,写java程序是实实在在的。java要想吸引更多的程序员加入,一个易用的IDE是非常重要的,就这点来说,我投eclipse一票。[&本帖最后由&perryhg&于&&15:33&编辑&]
&ilcj 回复于: 20:28:19
顶!我开发J2EE也在ECLIPSE下,主要是速度快,界面很舒服
&adam2003 回复于: 21:00:10
&wolfg 回复于: 23:44:32
&blade134 回复于: 09:10:20
E和N谁好这个争论已经持续了很多年……
&yuandong 回复于: 23:29:56
那jbuilder和eclipse那个好用呢
&wolfg 回复于: 23:35:04
自己学习、研究还是用eclipse吧,免得盗版之嫌
&jamesbang2003 回复于: 20:08:15
&niao5929 回复于: 15:14:24
&whucspanda 回复于: 00:06:54
好像就只看到我这个初学者还在用NETBEANS除了一个慢字以外,我觉得还是很好用的.在可视化编程方面还是不错的.我的机器也不是好机器,3年前的机子,P41.8,512M的条子,跑起来还行,可能是没有用过其它的吧,但总体感觉是很好&的.
&phiazat 回复于: 12:44:47
我也是刚转到eclipse下,下载后解压缩后不能运行阿,我的path,classpath,java_home都设置的没有问题啊!jdk是用jbuilder9上面的阿!
&flashkkk 回复于: 16:23:18
JBuilder比E怎么样?&想听听。
&BetonArmEE 回复于: 18:27:23
什么时候也谈谈“用UltraEdit与弃vi”嘿嘿~
&single64 回复于: 19:53:59
NetBeans在GUI的设计上要方便点其他的我还是喜欢eclipse
&perryhg 回复于: 06:40:47
在gui方面因为目前版本的visual&editor(VE)&似乎和eclipse&3.1不兼容,所以我一直没怎么用,不过看看jigloo&/jigloo/index.html&似乎是个非常不错的gui编辑工具,即可以开发swt,又可以开发swing
&perryhg 回复于: 06:45:17
且不说不同平台的问题,vi的终端窗口编辑的功能恐怕还没有很好的可以代替的方案.
&sleep_meng 回复于: 20:23:07
用什么工具都一样,只要自己觉得好用就行,因为每个人都不一样,为什么还要争来争去的呢?有时间在这里争那还不如多去看点东西呢!
&sumendala 回复于: 17:04:05
呵呵,我在window2003上用netbeans感觉还可以。。。没用过eclipse,我现在在我的笔记本上也装了netbeans4.1啦。。。
&andersonmao 回复于: 21:01:58
还有Eclipse功能强大的[color=#3333FF]插件plugin[/color],如xmlbuddy,lomboz&etc.还有Eclipse的[color=blue]Refactor[/color]功能。
&postbeerliu 回复于: 10:33:27
为什么我的Eclipse&运行的时候速度狂曼阿?特别是&代码补齐和建立索引,感觉机器就像死机了,后台的CPU占用率狂高!我的机器是P&IV&1.4G,&512M内存。有没什么解决办法啊?感觉挺好的一个开发环境,就是这速度实在让人难受!
&perryhg 回复于: 11:49:57
Eclipse目前最新的发布版是3.1.2,3.2版本还在开发中。你用的什么版本啊?
&艾斯尼勒 回复于: 11:51:37
太多的功能我没用过.但速度方面我感觉是这样的刚安装好eclipse和netbeans的时候,eclipse的速度优势是非常明显的但当eclispse装了一大堆插件之后....基本也不比netbean快了感觉还是习惯就好吧,也许对有些人eclipse更适合你写代码的风格,netbeans更适合另外些人
&perryhg 回复于: 01:45:54
允许第三方插件是个双刃剑哦,插件是很灵活,不过,我自己要是写个插件有bug,死循环了,把机器搞死了,我是不是应该责怪eclipse不该给我这个机会写插件啊?eclipse用的是lazy&load模式,不是所有插件一上来就被load的,只有被用到才会被load,你可以仔细检查下到底是哪个插件把你机器搞慢的,向开发者发发email,提提意见,没准下个版本就会有明显改进了。[&本帖最后由&perryhg&于&&03:02&编辑&]
&winderqd 回复于: 14:42:02
个人感觉还是eclipse好,netbean慢是因为netbean好像是用java写的,你想一下一个程序运行在java运行环境下,然后编写的程序又运行在java运行环境下,而且有时候还要通信,怎么能快?
&艾斯尼勒 回复于: 09:33:26
引用:原帖由&winderqd&于&&14:42&发表个人感觉还是eclipse好,netbean慢是因为netbean好像是用java写的,你想一下一个程序运行在java运行环境下,然后编写的程序又运行在java运行环境下,而且有时候还要通信,怎么能快?&这个不是理由,eclipse也是用java写的阿应该是netbeans自带了太多功能导致很慢的吧,而默认的eclipse只有&最基本的java开发功能,jsp的都不带
&狼神萧枫 回复于: 14:15:42
Eclipse,免费?NetBeans,收费?是一个原因?但不是主要的!受教了!
&艾斯尼勒 回复于: 14:25:22
引用:原帖由&狼神萧枫&于&&14:15&发表Eclipse,免费?NetBeans,收费?是一个原因?但不是主要的!受教了!&都是免费的
&tangchaodong 回复于: 15:33:41
爱用那个用那个,我就觉得eclipse用起来舒服!就像楼上说的适合自己的才最重要!
&kakasi 回复于: 21:35:20
纯水一下,eclipse使用中,myeclipse这个插件不错,虽然不是免费的
&tinywind 回复于: 09:18:02
我用eclipse时基本上所有plugin都不装,速度第一
& 相关主题:后使用快捷导航没有帐号?
查看: 1680|回复: 5
实际评测:NetBeans6.0与Eclipse的差距
# x/ u# M. v5 H$ G( `6 C. F% h6 ?
【IT168技术评论】! Q2 e- n' g, R2 j1 Y
& & 2007年的Bossie Awards关于IDE工具奖项中,NetBeans夺得桂冠。在新版的NetBeans 6.0中,包含有众多令人耳目一新的特性,同时为动态语言开发增加了强有力的支持。新版NetBeans用户界面日趋友好,并集成了Matisse GUI设计器、应用性能分析器等为开发者提供便利的工具,还具备与Eclipse类似的插件技术和富客户端应用发布。代码感知在NetBeans中也得到了加强,开发者可以通过上下文提示,快速补全系统API调用代码及自定义类。
& & / d. T' T' L- }. n$ P# U
& & 日,NetBeans 6.0.1发布了中文版,对于不喜欢英文版的朋友们来说,这真的是莫大的福音。NetBeans这些年越来越火,去年更是包揽了好几项大奖。外面的评论界很多都认为NetBeans已经超越了Eclipse,事实情况究竟如何呢?1 P" L$ N. l' M! ], J& h" C
& & 一 目前NetBeans6.0比Eclipse的差距
& &1&&速度慢。有时候editor最大化要点好几次才work。如果打开大的project,eclipse虽然慢但还可以work,netbeans基本上就死在那儿了。今天试了一下eclipse project importer,发觉在netbeans下机器好点,也还是可以work的. 今天大多数情况下,heap size都没有超过80m,还是可以接受的。+ T% {' j0 M& X5 n
0 W0 I- J$ Q7 I
& & 2 有时候键盘会失去响应。
& & Junit test,如果测试fail的话,比如说assertNull(&xxx should be null&, &string&),fail掉以后,message “xxx should be null&需要到output的窗口才可以看到,eclipse整合到一个窗口了。 1 i+ S$ ?* d% N7 v
& &3 插件偏少,比如说hibernate的插件,groovy的插件。 ; L: @. {$ e- L, d! D/ y
& & 有时在linux下,错误提示都是乱码...
& &4 xml editor没有eclipse的好用.
& & 现在eclipse自带的,或者xmlbuddy,代码提示都不错(xmlbuddy的更好),netbeans就不敢恭维了,反应慢,而且很多时候提示根本就出不来.
第一,Eclipse中新建一个类的时候,弹出的对话框中就可以直接指定超类和接口,而且定位超类和接口也非常简单,基本上只用输入开头的几个字母,就会弹出很多提示,即时把包名忘记都无所谓。如下图:
& &&&在上图中,如果想创建一个Struts中的Action,则只需要在选择超类的对话框中输入&Action&,Eclipse就会自动为我们匹配类型org.apache.struts.action,非常的方便。 . A. Z) f1 n3 \0 d
而在NetBeans中,新建一个Java类的时候:' D$ J; x* m& j7 h. q
& O+ e7 c, c) Y! Y1 c$ q' O' f' `
( O7 y7 Y4 E0 [7 p3 I9 e
& & 从上图可以看出,根本不能够指定超类和接口,也就是说,一切都要先创建一个类后,再到源代码中修改,无比的麻烦。因为我经常会忘记哪个类在哪个包中、接口中定义的方法的签名。+ S: I4 C- A& u0 N&&\
& & 第二,在Eclipse中,我们可以很方便的查看一个类的继承关系,如下图:
( x- e5 n/ c6 K, H; ^
& & 对于每一个类及它的超类,以及超类的超类,我都可以很方便的查看它们实现了哪些方法?根据这些方面的名称、参数以及返回类型,我基本上就可以把它的功能和设计思路搞个八九不离十了,把翻阅文档的时间都节省了,当然,这跟Java语言的优点是分不开的。如果是C++,我估计不管是哪个高手,如果只看代码而不看注释,一定会被搞得晕头转向。在我以前的学习过程中,不管是分析SWT/JFace,还是Eclipse的OpenGL包(可以看我以前写的关于RCP的随笔),Eclipse的这个功能帮了我不少忙。对于一些缺少文档或者文档不好找的技术,这个功能尤其有用。 $ n4 j. [" _$ I* O
& & 而NetBeans呢?根本就没有这个功能。
根据社区针对开发者的调查,网友对netbeans使用的总体感觉如下:
& & 首先,netbeans给我的感觉:慢,明显得慢,启动慢,退出也慢,让我感觉机器好像降低了一个档次似的,比如某个网友的机器已经是P4 2.8 1G内存,但是相比eclipse的轻巧和快速,还是无法忍受netbeans的慢,尤其是等了好久终于出现图形界面了,还要看着这个界面很久等待扫描classpath让人更无法忍受。
" r3 Q; B8 a&&z: B5 P/ h
& &其次,eclipse插件众多,有xmleditor,有subversion支持, 有UML建模工具,数据库工具,struts, hibernate都可以用工具来生成有关xml文件,如果不是这样的话,单就手工修改这些xml文件,工作效率就降低不少,完全体现不出他们的优势。eclipse下面还有javascript的开发和调试插件,写web项目的时候特别方便。相比较插件的数量,netbeans远不及eclipse
& &第三,netbeans的程序全部用ant进行管理,这样在导入一些非netbeans开发的项目的时候造成困扰,netbeans不会自动通过识别其他的ant脚本设置的classpath来进行package的导入,每次都要手工设置许多包,特别不方便,另外,如果不使用netbeans自动创建的ant脚本,就无法进行程序debug。相比较之下,eclipse即支持ant,又不强制你使用ant,你可以用ant来管理你的project,来生成,调试,打包,生成文档等等。当你不需要ant的时候,比如要进行调试,可以跳过ant的管理直接进入调试模式。别的不说,单就eclipse的ant编辑工具就非常出色,当你在outline里面点击列出来的property名和task名的时候,会自动帮你定位到build.xml中相应的位子,修改特别方便,用netbeans的时候,总是要在找这个task在什么地方。
2 J2 M9 Y; ]( g$ a
最后,且不说eclipse可以实现perl/python/php/c#等其他语言的IDE,就单说java程序源代码编写方面:虽然netbeans最早支持了jdk5的语法,可是当你有些地方可以用到新格式的代码的时候,netbeans也不会给你任何提示,比如generics,如果你创建了一个支持autoboxing的变量并且输入了内容,eclipse会给你一个友好的提示,说定义需要parametised,但是netbeans却什么都不会说。
错误纠正:
当发生错误的时候,netbeans会在源码编写窗口提示错误,但是eclipse不仅提示你错误,还会有assisstance帮助你自动修正错误,可以帮你创建变量,和定义,比如: ' G/ o% [& f6 h1 x8 {6 L9 j
s = &abc&.getBytes();
如果你从未曾定义s,当你用ctrl+1呼叫代码助手的时候,代码助手就会问你你是要作什么,如果你选择“本地变量”,就会自动完成 : P/ X$ e' L! N9 _# q7 F
byte[] s = &abc&.getBytes();
如果你选择“创建field”,就会自动帮你在class里面定一个private byte[]
如果你选择来自parameter,就会自动在方法的参数里面追加byte[] s
简直太方便了。
" O0 \% C2 x6 W& Z; B8 n. g( Q
自动完成:
你在写任何变量名的时候,只要写出前几个字母,然后按ctrl+space(在中文操作系统中,这个快捷键和呼叫中文输入法冲突,所以我改成了shift+space)就会出现许多以你输入的部分开头的选项,比如 & d1 d: ~&&t$ p
St(ctrl+space) 就会自动完成String,这个功能netbeans也有,可是netbeans的自动完成快捷键都是事先定义的,而且都是静态的。netbeans没有的是,你自己创建的类名,field名已经变量名都是自动完成的对象!比如:
&&f1 _2 s: O" i# P. }3 D
dbc(ctrl+space) 就会自动完成dbconn 4 G- ]" J7 |$ u9 {+ d5 I6 m( F
还有就是eclipse的自动完成还可以帮你自动创建class和method
MyClass mc = new MyClass(); . Z4 d8 d- ~' v0 \3 q) K
当这个MyClass根本不存在的时候,自动完成会自动帮你创建MyClass类和run()方法,当然,自动完成还有一种经常发生的情况是拼写错误,eclipse会自动列出拼写最接近的几个类名/方法名/变量名让你选择,快速修正错误。
7 C&&V1 e1 ^+ ]% P, r
eclipse的intelisense和autocompletion都是大小写不敏感的,虽然java程序命名有一定的习惯,但是有时候还是有些区别,比如到底是XMLUtil还是XmlUtil,不同的人写出来还是有些差异,在netbeans里面,大小写必须完全一致,才能自动完成,而eclipse里面,不管你输入的是大写小写,这个名字始终存在,当你选中以后还自动帮你纠正大小写问题。
& & netbeans和eclipse都支持自动导入,比如你用了一个File f = new File(&a.txt&);
用netbeans和eclipse都会帮你自动import java.io.F,但是netbeans的import完以后,由于文件头部的行数发生变化,导致所有代码的行的位置也都一起移动,使得你copy一段代码到你程序以后,一旦import,你不得不往上/下翻滚屏幕找你的代码,而eclipse默认就将import部分折叠,不管添加或者移除import都不会影响代码的位置。
Exception handling: 5 C: _- P0 T* ]) ]( U3 b4 O% N
& & eclipse会在写程序的时候就告诉你哪里发生了exception,并且会自动生成throw语句或者try/catch语句,当你在try里面写出了含有新的exception的代码的时候,会自动添加一个catch,关键是,把Exception的名字都帮你写好了,netbeans则完全没有提示,非要到编译了以后,再回来找哪里没有try或者没有throw,就是从下面的console display区域copy这个Exception的名字也经常不成功。 ( p: g( H, n, O% c' a4 Z
& &随着eclipse新版本的发出,netbeans的优势越来越少,从eclipse con2005的结果可以看出,bea、borland、sybase都加入了elipse的董事会. 目前大概唯一用得到netbeans的地方是调试别人的jsp程序,因为netbeans自带了tomcat(tomcat也是在sun的主导下开发的),其他的,我实在看不出有什么比eclipse强的地方。每次升级jdk都导致netbeans不能运行,因为netbeans在/etc/netbeans.conf里面写死了jdk的文件的绝对地址,非要手工用文本编辑器修改这个文件才能让netbeans启动正常,而eclipse几乎不受jdk版本升级影响。
根据社区针对开发者的调查,网友对netbeans使用的总体感觉如下: &&F/ v# h, q&&C! ?' N
& & 首先,netbeans给我的感觉:慢,明显得慢,启动慢,退出也慢,让我感觉机器好像降低了一个档次似的,比如某个网友的机器已经是P4 2.8 1G内存,但是相比eclipse的轻巧和快速,还是无法忍受netbeans的慢,尤其是等了好久终于出现图形界面了,还要看着这个界面很久等待扫描classpath让人更无法忍受。
& &其次,eclipse插件众多,有xmleditor,有subversion支持, 有UML建模工具,数据库工具,struts, hibernate都可以用工具来生成有关xml文件,如果不是这样的话,单就手工修改这些xml文件,工作效率就降低不少,完全体现不出他们的优势。eclipse下面还有javascript的开发和调试插件,写web项目的时候特别方便。相比较插件的数量,netbeans远不及eclipse ) N% ]9 r6 j5 G* l
& &第三,netbeans的程序全部用ant进行管理,这样在导入一些非netbeans开发的项目的时候造成困扰,netbeans不会自动通过识别其他的ant脚本设置的classpath来进行package的导入,每次都要手工设置许多包,特别不方便,另外,如果不使用netbeans自动创建的ant脚本,就无法进行程序debug。相比较之下,eclipse即支持ant,又不强制你使用ant,你可以用ant来管理你的project,来生成,调试,打包,生成文档等等。当你不需要ant的时候,比如要进行调试,可以跳过ant的管理直接进入调试模式。别的不说,单就eclipse的ant编辑工具就非常出色,当你在outline里面点击列出来的property名和task名的时候,会自动帮你定位到build.xml中相应的位子,修改特别方便,用netbeans的时候,总是要在找这个task在什么地方。
# ^0 z4 n3 y* ]
最后,且不说eclipse可以实现perl/python/php/c#等其他语言的IDE,就单说java程序源代码编写方面:虽然netbeans最早支持了jdk5的语法,可是当你有些地方可以用到新格式的代码的时候,netbeans也不会给你任何提示,比如generics,如果你创建了一个支持autoboxing的变量并且输入了内容,eclipse会给你一个友好的提示,说定义需要parametised,但是netbeans却什么都不会说。
错误纠正:
当发生错误的时候,netbeans会在源码编写窗口提示错误,但是eclipse不仅提示你错误,还会有assisstance帮助你自动修正错误,可以帮你创建变量,和定义,比如:
s = &abc&.getBytes(); ! _0 |. f6 t3 O" J1 b" k6 S- o
如果你从未曾定义s,当你用ctrl+1呼叫代码助手的时候,代码助手就会问你你是要作什么,如果你选择“本地变量”,就会自动完成
byte[] s = &abc&.getBytes(); ; A: S2 ]) `2 W/ y- C
如果你选择“创建field”,就会自动帮你在class里面定一个private byte[] ) T) U$ n/ H0 F5 t. ?, Z
如果你选择来自parameter,就会自动在方法的参数里面追加byte[] s
简直太方便了。
4 v1 J3 s$ i- i0 |! ]# T
自动完成: " W! `3 V& \$ {+ q
你在写任何变量名的时候,只要写出前几个字母,然后按ctrl+space(在中文操作系统中,这个快捷键和呼叫中文输入法冲突,所以我改成了shift+space)就会出现许多以你输入的部分开头的选项,比如
St(ctrl+space) 就会自动完成String,这个功能netbeans也有,可是netbeans的自动完成快捷键都是事先定义的,而且都是静态的。netbeans没有的是,你自己创建的类名,field名已经变量名都是自动完成的对象!比如: 4 l, h) r0 W; }, H1 m. V
- G8 b6 q8 R/ u7 {
dbc(ctrl+space) 就会自动完成dbconn ( l* T1 c&&k& L% _
还有就是eclipse的自动完成还可以帮你自动创建class和method
MyClass mc = new MyClass(); ! ?7 x- l0 z, R1 B( H
mc.run(); - T# h4 b! y* h) G
当这个MyClass根本不存在的时候,自动完成会自动帮你创建MyClass类和run()方法,当然,自动完成还有一种经常发生的情况是拼写错误,eclipse会自动列出拼写最接近的几个类名/方法名/变量名让你选择,快速修正错误。 6 G. ?5 O% h( Y6 |9 v: r
eclipse的intelisense和autocompletion都是大小写不敏感的,虽然java程序命名有一定的习惯,但是有时候还是有些区别,比如到底是XMLUtil还是XmlUtil,不同的人写出来还是有些差异,在netbeans里面,大小写必须完全一致,才能自动完成,而eclipse里面,不管你输入的是大写小写,这个名字始终存在,当你选中以后还自动帮你纠正大小写问题。
6 \4 W9 K: y4 k2 R2 s6 e
导入: , F5 F: j: D) P
& & netbeans和eclipse都支持自动导入,比如你用了一个File f = new File(&a.txt&);
用netbeans和eclipse都会帮你自动import java.io.F,但是netbeans的import完以后,由于文件头部的行数发生变化,导致所有代码的行的位置也都一起移动,使得你copy一段代码到你程序以后,一旦import,你不得不往上/下翻滚屏幕找你的代码,而eclipse默认就将import部分折叠,不管添加或者移除import都不会影响代码的位置。 % r7 K" B2 ~% E+ b+ A
Exception handling: & }3 C1 y( H8 q
& & eclipse会在写程序的时候就告诉你哪里发生了exception,并且会自动生成throw语句或者try/catch语句,当你在try里面写出了含有新的exception的代码的时候,会自动添加一个catch,关键是,把Exception的名字都帮你写好了,netbeans则完全没有提示,非要到编译了以后,再回来找哪里没有try或者没有throw,就是从下面的console display区域copy这个Exception的名字也经常不成功。
& &随着eclipse新版本的发出,netbeans的优势越来越少,从eclipse con2005的结果可以看出,bea、borland、sybase都加入了elipse的董事会. 目前大概唯一用得到netbeans的地方是调试别人的jsp程序,因为netbeans自带了tomcat(tomcat也是在sun的主导下开发的),其他的,我实在看不出有什么比eclipse强的地方。每次升级jdk都导致netbeans不能运行,因为netbeans在/etc/netbeans.conf里面写死了jdk的文件的绝对地址,非要手工用文本编辑器修改这个文件才能让netbeans启动正常,而eclipse几乎不受jdk版本升级影响。
开发者期待netbeans未来的改进
& &在NetBeans的社区上可以看到使用人员的页面,认真读一读NetBeans6.0使用过程中的一些反馈的问题及意见,可以看出,NetBeans6.0需要改进的地方还真的很多,那当然也代表,NetBeans 6.1值得期待的亮点也更多,也是主流Java IDE最需的特性: ( S0 Q4 G5 J- w& K7 [% s8 o+ x4 j
& & 应该增加对Spring框架的支持。尽管有一些第三方的插件,但还是希望像其它IDE一样的友好的支持集成Spring。
& & 增加对Hibernate框架的支持,可以像IntelliJ IDEA那样完善的支持Hibernate。
& & 增加对WebSphere 6.0及6.1的支持。一位JavaOne的顾问这样放言:除非NetBeans支持WebSphere,不然不会使用NetBean,因为WebSphere在商业应用服务器市场上占有50%的市场。这一批用户非常的期待NetBeans支持WebSphere。
& & 支持并提供Axis运行时环境。很多的Java开发者大量的使用Axis或XFire来开发web services。这部分的Java开发人员非常的期待NetBeans支持Axis。
& & 将Facelets作为NetBeans的标准,Facelets对JSF开发人员来说很重要,而且正在成为JSF2.0的标准化实现。当然,这样的插件当然是有,但只是支持NetBeans6.0,同时不是主流的插件。
& & 对Appfuse的支持。1 u1 g: s! t# m" P2 q4 i: P# ?+ V
& &&&支持GWT。9 P&&K: A: ^&&w
& & 对JavaScript的智能提示与代码自动完成功能。9 V5 t$ J+ X/ v5 Y1 U
& &期待未来netbeans乘着目前比较好的势头,刮起更大的“完美风暴” !
差距还是有的,不过也不算大

我要回帖

更多关于 idea创建java类 的文章

 

随机推荐