对于本书的前两版,读者给了很高的评价,当然我也十分欣慰。但有时 他们也会抱怨。其中常被提起的就是“这本书实在太厚了”。在我看来, 如果这是你抓到的唯一把柄,那你也是在太次了。(人们会想起奥地利国 王对莫扎特作品的批评:“音符太多了”。当然,我可没有把自己比作莫 扎特。)此外,我只能设想提出这种批评的人还未能了解Java语言的众多 特性,还未读过其它的书籍。尽管如此,在这一版中,我还会尽量删减那 些已经过时的,或是不那么关键的部分。这么做我很安心,因为本书的第 和第二版还可以从网站上(在www.Bruceeckel.con)免费下载,另外 附在书后的 CD ROM上也有。如果你还需要老的资料,它还在那里,对 于作者来说这么做可以减轻很多负担。比方说,“设计模式( Design Patterns)”这一章太大了,已经独立成册了: Thinking in Patterns (Java语言)(也可以在网站上下载)。 我已经决定,等到Sun发布下一版Java(JDK1.5),我就把本书分成两 册。估计那一版中有一个重大的改进,会(效法C++的模板 “ templates”)引入范型( generics)。分成两册可以增加这些内容的章 节。但是,有个声音悄悄在问“为什么要等到下一版?”。所以我在这 版中就这么做了,于是一切都明朗了。我往一本普及性的书里塞了太多东 新的书不是第二卷,而只是一些高级的课题。它会叫 Thinking in EnterpriseJava。这本书现在可以在WwW.BruceEckel.com(以某种形 式)免费下载。由于是一本独立的书,因此它的篇幅可以随课题所需而扩 展。就像 Thinking in Java一样,它的目标是给读者做一个简单易懂的 j2EE技术的基础知识的介绍。为读者能探讨更高级的课题做准备。你能 在附录C中能找到更多细节。 对于那些仍旧不能忍受本书厚度的读者来说,我只能说抱歉了。不管你信 不信,为了让它尽可能的薄,我是费尽心机。别去管书有多厚,我觉得你 还可以用很多别的方法。比方说你可以得到本书的电子版(从网站或是随 书的 CD ROM上),所以如果你平常带着笔记本的话,你可以把它放到你 的笔记本里,这么做不会增添额外的重量。如果你想让它更轻,还有本书 的 Palm pilot版,很容易找到。(有人跟我说,他喜欢躺在床上,打开屏 幕的背光灯读这本书。还说这样就不会妨碍他妻子了。但愿他睡得香 如果一定要在纸上读,据我所知有人一次打印一章,然后放到公文包里, 在火车上读。 Java 2, JDK 1.4 Java jDK发布的序号是1.0,1.1,1.2,1.3以及本书讨论的14。尽管 这些版本号仍然停留在1,但是对于JDK1.2以及其后版本的正式称呼 是Java2。它展示了新旧版本之间的巨大差异。旧版本中有许多瑕疵 对此我在本书的第一版中颇有非议;而新版本中的缺陷大大减少,并且增 加了许多特性和精彩的设计。 第5页共6页shhgs@wgqqh.com 5 ✁ ✂ 6 ✁ ¥) (e¬,Í(b A[j»m G"[º§*·9(Í ñFÉ,ÏF<Q ÄÅ ¡g(3PY¡[Fɨ,(ª"º|9rξ ¥]d12(bI ÍÉV,Ï AÝmPý þ81 ]d)ò½ó;#|! b(ªÅ;,£ Ja va (¡V dzÅ^§A(±hiÄòF 3*ºhNY Ìôõ^(ÃXYZ( ZT4qæ ( 3ÝEHIJ(F www. B ru ceE ckel . com )н F( CD ROM J[mÄÅ¡î%~((AFYË¥ )1Q$ ZTÝEV¿À8µ$Í#$´(D esi g n P a ttern s)Ï 3ûÉÂ,ôõ ¡,I Th i n ki n g i n P a ttern s (Ja va )([ÝEFHIJ) ôõNO-g Su n ì[3 Ja va (JD K 1. 5 )P e ¡c$Y3*m3×Â(ðêº(Ø C+ + (¢ Ítem p l a tesÏ)£tS¤(g en eri cs)e¡ÝEtä Ì`R(û m×¥¦¦FuÍvZ%-g3Ê ÏDEF 3 * ZT,)3§Æ¨,©3 ª)z(Ë7,ÉVP Q Ì(X«àó3ÌÍ(NAº
Th i n ki n g i n E n terp ri se Ja va íFÝEF www. B ru ceE ckel . com (EO; ´)w)3 (æòA($ÝE¸NDîà } Th i n ki n g i n Ja va 3¦A(Þù¬T3×,&S=( J2 E E °±(!^LØ(;¬Í(NTÔù¡; F C *;gV® ¥)Y̯°X;±> z(Q$ó;$²,Xi¡[ X[,ÇAhÝ;(³hq=eximV¡ ÝEVe(µ8µ$¡ÝEg (¦(HIø ( CD ROM J)DEÄÅ¡0·.´µ (¡ÝEPAkg¡ (´µ Ë ZTXºt¶½(NÄÅ¡|ÇAm ( P a l m P i l ot RSg(mªZ$G·¸¹FºJ]´ µ(»¼¼ $ ¦Xº½¾G¿,³GÀÁ) ÄÅ3O%F©JMDLmª3¨]¨3ûAkgK
ÂË FÃbJ Java 2 , JDK 1 . 4 Ja va JD K ì[(ãÄ 1. 0 , 1. 1, 1. 2 , 1. 3 E) ¶( 1. 4hi Ì Ä¯AÅÆF 1¥) JD K 1. 2 E)§ (´ÇÈ Ja va 2 A6,Ì° u4(ÉÂBÊ° *mÄVËÌ ¥òF (3*Ím¯Î àÌ *(ÏÐÂÂút ä,ÄVdzÑÒ(#$