|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
因为能用到多少功能就用多少,不能用就不用!总的来说:要简单要性能好,可以不用框架。你说java复杂,就是因为你把java(j2ee)与这些框架混在了一起。
把握前述的常识后,接上去就能够入手下手创立本人的工具库,以便削减大概完整打消反复的代码。比方,可为System.out.println()创立一一般名,削减反复键进的代码量。它能够是名为tools的一个包(package)的一部分:- //:P.java
- //TheP.rint&P.rintlnshorthand
- packagecom.bruceeckel.tools;
- publicclassP{
- publicstaticvoidrint(Objectobj){
- System.out.print(obj);
- }
- publicstaticvoidrint(Strings){
- System.out.print(s);
- }
- publicstaticvoidrint(char[]s){
- System.out.print(s);
- }
- publicstaticvoidrint(charc){
- System.out.print(c);
- }
- publicstaticvoidrint(inti){
- System.out.print(i);
- }
- publicstaticvoidrint(longl){
- System.out.print(l);
- }
- publicstaticvoidrint(floatf){
- System.out.print(f);
- }
- publicstaticvoidrint(doubled){
- System.out.print(d);
- }
- publicstaticvoidrint(booleanb){
- System.out.print(b);
- }
- publicstaticvoidrintln(){
- System.out.println();
- }
- publicstaticvoidrintln(Objectobj){
- System.out.println(obj);
- }
- publicstaticvoidrintln(Strings){
- System.out.println(s);
- }
- publicstaticvoidrintln(char[]s){
- System.out.println(s);
- }
- publicstaticvoidrintln(charc){
- System.out.println(c);
- }
- publicstaticvoidrintln(inti){
- System.out.println(i);
- }
- publicstaticvoidrintln(longl){
- System.out.println(l);
- }
- publicstaticvoidrintln(floatf){
- System.out.println(f);
- }
- publicstaticvoidrintln(doubled){
- System.out.println(d);
- }
- publicstaticvoidrintln(booleanb){
- System.out.println(b);
- }
- }///:~
复制代码
一切分歧的数据范例如今都能够在一个新行输入(P.rintln()),大概不在一个新行输入(P.rint())。
人人大概会料想这个文件地点的目次必需从某个CLASSPATH地位入手下手,然后持续com/bruceeckel/tools。编译终了后,使用一个import语句,便可在本人体系的任何中央利用P.class文件。以下所示:
ToolTest.java
以是从如今入手下手,不管甚么时分只需做出了一个有效的新工具,便可将其到场tools目次(大概本人的团体util或tools目次)。
1.CLASSPATH的圈套
P.java文件存在一个十分风趣的圈套。出格是关于初期的Java完成计划来讲,类路径的准确设定一般都是很坚苦的一项事情。编写这本书的时分,我引进了P.java文件,它最后看起来仿佛事情很一般。但在某些情形下,却入手下手呈现中止。在很长的工夫里,我都确信这是Java或其他甚么在完成时一个毛病。但最初,我终究发明在一个中央引进了一个程序(即第17章要申明的CodePackager.java),它利用了一个分歧的类P。因为它作为一个工具利用,以是偶然候会进进类路径里;另外一些时分则不会如许。但只需它进进类路径,那末倘使实行的程序必要寻觅com.bruceeckel.tools中的类,Java起首发明的就是CodePackager.java中的P。此时,编译器会呈报一个特定的办法没有找到。这固然长短常使人头疼的,由于我们在后面的类P里明显看到了这个办法,并且基本没有更多的诊断呈报可为我们供应一条线索,让我们晓得找到的是一个完整分歧的类(那乃至不是public的)。
乍一看来,这仿佛是编译器的一个毛病,但倘使考查import语句,就会发明它只是说:“在这里大概发明了P”。但是,我们假定的是编译器搜刮本人类路径的任何中央,以是一旦它发明一个P,就会利用它;若在搜刮过程当中发明了“毛病的”一个,它就会中断搜刮。这与我们在后面表述的略微有些区分,由于存在一些厌恶的类,它们都位于包内。而这里有一个不在包内的P,但仍可在惯例的类路径搜刮过程当中找到。
假如您碰到象如许的情形,请务必包管关于类路径的每一个中央,每一个名字都仅存在一个类。
java比较简单,没有C++的烦琐,但学习时最好有C++为基础.与JSP和SQL起应用,功能强大. |
|