《Java高手是怎樣煉成的:原理、方法與實(shí)踐》是作者20多年工作經(jīng)驗(yàn)的結(jié)晶。內(nèi)容由淺入深,循序漸進(jìn),通過(guò)500多個(gè)簡(jiǎn)單易懂、可運(yùn)行的完整實(shí)例,幫助讀者理解Java編程的邏輯、概念及實(shí)操。本書(shū)內(nèi)容豐富,講解接地氣,從理論到實(shí)踐,從基礎(chǔ)到高級(jí),幫助讀者建立學(xué)習(xí)信心,在實(shí)踐中學(xué)會(huì)Java編程。
《Java高手是怎樣煉成的:原理、方法與實(shí)踐》分五部分,共23章。第一部分(第1~5章)主要介紹Java基本語(yǔ)法,包括Java語(yǔ)言概述和發(fā)展、編程和開(kāi)發(fā)環(huán)境及設(shè)置等。第二部分(第6~9章)通過(guò)生動(dòng)實(shí)例介紹類(lèi)、對(duì)象、繼承、多態(tài)、內(nèi)部類(lèi)以及接口等Java編程概念和技術(shù)。第三部分(第10~15章)走進(jìn)數(shù)組和字符串,深入講解它們的應(yīng)用、異常處理,并深入討論更多面向?qū)ο蠹夹g(shù)。第四部分(第16~20章)介紹20多種GUI組件、字體、顏色、圖像以及音頻編程。第五部分(第21~23章)詳細(xì)講解數(shù)據(jù)流、文件I/O、數(shù)據(jù)庫(kù)編程以及網(wǎng)絡(luò)編程等。
《Java高手是怎樣煉成的:原理、方法與實(shí)踐》專(zhuān)為不同層次的Java程序員精心編寫(xiě),既適合編程初學(xué)者入門(mén),又適合程序員進(jìn)階,還可以作為高等院校講授面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言以及Java語(yǔ)言的參考教材。
序言
Java是世界上第一個(gè)100%不依賴(lài)操作系統(tǒng)平臺(tái)、面向?qū)ο蟮木幊陶Z(yǔ)言。在從發(fā)布、發(fā)展到成熟、壯大的20多年里,Java如同一顆冉冉升起的耀眼明星,迅速超越C和C++,獨(dú)占鰲頭,成為軟件開(kāi)發(fā)最廣泛應(yīng)用的編程語(yǔ)言之一。恭賀你選擇了Java,感謝你翻開(kāi)這本書(shū),它可以作為啟迪你Java編程概念的向?qū)А⒋蜷_(kāi)通往Java技術(shù)寶庫(kù)的“金鑰匙”。這無(wú)疑會(huì)使你與Java結(jié)下不解之緣,成為掌握和擁有Java技術(shù)大家庭中的一員。
Java語(yǔ)言包括廣泛的應(yīng)用技術(shù)和應(yīng)用領(lǐng)域。從應(yīng)用技術(shù)或軟件包來(lái)說(shuō),它包括Java標(biāo)準(zhǔn)版本軟件包Java SE、Java企業(yè)版本軟件包Java EE,以及Java微型版本Java ME。從軟件開(kāi)發(fā)及應(yīng)用領(lǐng)域來(lái)說(shuō),它包括桌面應(yīng)用編程、Web客戶端編程、服務(wù)器編程、移動(dòng)設(shè)備(如手機(jī))編程以及機(jī)器人編程等。雖然本書(shū)專(zhuān)門(mén)介紹Java標(biāo)準(zhǔn)版本的編程概念和技術(shù),但它是學(xué)習(xí)其他Java技術(shù)的基礎(chǔ)。學(xué)好了本書(shū)中介紹和討論的Java編程概念和技術(shù),掌握其他Java技術(shù)就不難了。
那么怎樣寫(xiě)好這本書(shū),使讀者在合上這本書(shū)的時(shí)候愛(ài)不釋手,有繼續(xù)學(xué)下去的欲望;當(dāng)讀者學(xué)完這本書(shū)的時(shí)候,會(huì)由衷地說(shuō),這本書(shū)沒(méi)有白買(mǎi),它物超所值,是值得擁有的一本好書(shū)呢?
為此,我嚴(yán)格遵循下面的寫(xiě)作思想:
第一,作者必須是讀者。這是我多年從事寫(xiě)作的經(jīng)驗(yàn)之談。我在寫(xiě)本書(shū)的時(shí)候,總是在不斷地設(shè)身處地問(wèn)自己:在介紹Java編程的眾多書(shū)中,讀者為什么要買(mǎi)你寫(xiě)的書(shū)?如果我是讀者,會(huì)買(mǎi)它嗎?回想起我在初學(xué)Java的時(shí)候,每遇到一個(gè)難懂的Java概念編程技術(shù),總是會(huì)問(wèn):什么是問(wèn)題所在(What)?為什么會(huì)這樣(Why)?怎樣解決它(How)?我在這本書(shū)的寫(xiě)作大綱、章節(jié)安排以及內(nèi)容編排上是按照這樣一個(gè)3W作為主線,使它成為讀者學(xué)習(xí)Java編程的良師益友。
第二,作者不僅僅是讀者。作者必須把握讀者的心理,知道讀者在學(xué)習(xí)過(guò)程中的難點(diǎn)。我們經(jīng)常說(shuō)難者不會(huì),會(huì)者不難。我常常問(wèn)自己:為什么學(xué)會(huì)了就不難了呢?究根尋源,本來(lái)問(wèn)題就不難,是沒(méi)有講清楚、沒(méi)有寫(xiě)清楚,把概念和技術(shù)越說(shuō)越玄、越寫(xiě)越深?yuàn)W,如同不會(huì)畫(huà)畫(huà),越描越黑。所以我寫(xiě)作的原則是:自己沒(méi)有搞懂的概念和技術(shù),絕不寫(xiě),否則一定會(huì)誤人子弟。懂了就覺(jué)得簡(jiǎn)單了,才會(huì)把難的東西寫(xiě)得簡(jiǎn)單易懂,讀者才會(huì)受益。
第三,沒(méi)有實(shí)際應(yīng)用和教學(xué)經(jīng)驗(yàn)的概念和技術(shù),絕不把它寫(xiě)進(jìn)書(shū)里。我是從1996年,即Java正式發(fā)布的時(shí)候,開(kāi)始自學(xué)Java,并且從事Java教學(xué)的。我所在的大學(xué)地處美國(guó)硅谷,是Java和許多計(jì)算機(jī)軟硬件技術(shù)的誕生地。創(chuàng)建Java語(yǔ)言的Sun Microsystems以及收購(gòu)了它的甲骨文公司(Oracle)就離我的居所十幾分鐘的車(chē)程。我?guī)缀趺磕甓紖⒓覬avaOne國(guó)際會(huì)議,聆聽(tīng)Java領(lǐng)軍人物的演講,參加介紹Java新技術(shù)的講座和培訓(xùn)以及參觀所有Java伙伴公司的展廳,收集有關(guān)Java軟件開(kāi)發(fā)的資料,充實(shí)自己的知識(shí)。這些經(jīng)驗(yàn)無(wú)疑有益地幫助我完成本書(shū)的寫(xiě)作。
第四,以實(shí)例和實(shí)戰(zhàn)項(xiàng)目為主導(dǎo)解釋編程概念和難點(diǎn),我認(rèn)為這是學(xué)習(xí)任何編程語(yǔ)言的特點(diǎn)。我在《全C編程》《微型計(jì)算機(jī)應(yīng)用用戶指南》等書(shū)以及我的教學(xué)實(shí)踐中始終把握這個(gè)特點(diǎn),讀者和學(xué)生受益匪淺,反映甚佳。市面上流行的一些編程書(shū)中也會(huì)列舉大量的例子,但許多只是程序代碼片段,或者是讀者不能編譯執(zhí)行的程序。我認(rèn)為這不是真正意義上的通過(guò)實(shí)例來(lái)學(xué)習(xí)編程。在我的書(shū)中500多個(gè)實(shí)例都是完整的程序,都可以編譯和執(zhí)行。這樣不僅可以壓縮書(shū)的厚度、降低圖書(shū)價(jià)格,還有其他兩個(gè)好處:讀者在學(xué)習(xí)書(shū)中的舉例時(shí),可以抓住重點(diǎn);在深化理解和掌握消化時(shí),可以看到程序的全貌和各個(gè)部分的關(guān)系。
第五,學(xué)習(xí)編程關(guān)鍵在于動(dòng)手。心動(dòng)不如行動(dòng),光看書(shū)是學(xué)不會(huì)Java的!耙胫览孀拥淖涛,必須親口嘗嘗!本幊淌菍(shí)踐性很強(qiáng)的藝術(shù),我在20多年的教學(xué)中,看到許多學(xué)生上課認(rèn)真聽(tīng)講、專(zhuān)心記筆記;下課用心看書(shū),逐字逐段摳書(shū)本,但卻忽視了實(shí)踐環(huán)節(jié),缺乏動(dòng)手能力,為什么?因?yàn)樽鼍毩?xí)太少,上機(jī)編寫(xiě)程序太少,分析并修改程序例子太少。針對(duì)這個(gè)特點(diǎn),我在教學(xué)中注重強(qiáng)調(diào)練習(xí)、實(shí)踐、分析、修改、提高、鞏固這幾個(gè)環(huán)節(jié)。許多編程書(shū)籍往往沒(méi)有練習(xí)題部分。我覺(jué)得這是十分遺憾或美中不足的事。練習(xí)題不僅要有,而且應(yīng)該涵蓋章節(jié)中討論過(guò)的所有重要編程概念和技術(shù),引導(dǎo)、鼓勵(lì)、督促讀者勇于實(shí)踐并且善于實(shí)踐。
本書(shū)就是在以上原則和宗旨的指導(dǎo)下,積累我20多年Java教學(xué)和實(shí)踐經(jīng)驗(yàn)以及20多年程序設(shè)計(jì)教學(xué)生涯的基礎(chǔ)上寫(xiě)成的。
本書(shū)分為五部分,共23章。
第一部分 新手上路,共5章:第1章介紹Java的基礎(chǔ)知識(shí),第2章介紹Java編程相關(guān)的內(nèi)容,第3章討論新手須知的類(lèi)和對(duì)象,第4章闡述控制語(yǔ)句相關(guān)知識(shí),第5章介紹數(shù)據(jù)控制和質(zhì)量保證的基礎(chǔ)內(nèi)容,引導(dǎo)初學(xué)者為學(xué)習(xí)Java編程打好基礎(chǔ)。
第二部分 告別菜鳥(niǎo),共4章:第6章詳細(xì)介紹類(lèi)和對(duì)象,第7章討論了繼承,第8章介紹多態(tài)的用法,第9章闡述接口相關(guān)內(nèi)容,主要討論面向?qū)ο缶幊痰谋举|(zhì)概念和技術(shù)。
第三部分 Java提高,共6章:第10章細(xì)談數(shù)組,第11章深入介紹字符串,第12章揭秘異常處理,第13章介紹高手掌握的更多OOP技術(shù),第14章介紹高手須知的集合類(lèi),第15章闡述多線程相關(guān)內(nèi)容,深入介紹Java的其他重要編程概念和技術(shù)。
第四部分 GUI和多媒體編程,共5章:第16章介紹GUI相關(guān)內(nèi)容,第17章介紹GUI組件布局——安排組件位置和顯示風(fēng)格,第18章說(shuō)明更多組件和事件處理,第19章揭秘事件處理那些事兒,第20章介紹多媒體編程,引導(dǎo)讀者走進(jìn)Java,包括圖形、圖像、字體、顏色以及音頻播放等多媒體編程世界。
第五部分 高手進(jìn)階——數(shù)據(jù)流處理和編程,共3章:第21章介紹文件I/O,第22章說(shuō)明數(shù)據(jù)庫(kù)編程,第23章闡述網(wǎng)絡(luò)編程,使讀者成為Java編程和實(shí)戰(zhàn)項(xiàng)目開(kāi)發(fā)技術(shù)的高手。
我們誠(chéng)心將這本書(shū)獻(xiàn)給熱衷于Java編程的讀者。讓我們?cè)贘ava的廣袤天地間,為了解Java真相、掌握J(rèn)ava技術(shù),勇于探索和實(shí)踐。
高永強(qiáng),博士,現(xiàn)任美國(guó)加利福尼亞州奧龍尼學(xué)院計(jì)算機(jī)系終身教授,并受聘為國(guó)內(nèi)外多所大學(xué)的客座教授。從事國(guó)內(nèi)外計(jì)算機(jī)教學(xué)以及軟件開(kāi)發(fā)和咨詢20多年,專(zhuān)長(zhǎng)于計(jì)算機(jī)語(yǔ)言、計(jì)算機(jī)管理信息系統(tǒng),以及計(jì)算機(jī)應(yīng)用和培訓(xùn)。出版著作《微型計(jì)算機(jī)應(yīng)用用戶指南》《全C編程》和《Java編程藝術(shù)》。
盧晨,蘇州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院研究生畢業(yè),蘇州工業(yè)園區(qū)服務(wù)外包職業(yè)學(xué)院副教授。擁有十余年一線軟件開(kāi)發(fā)教學(xué)經(jīng)驗(yàn),教授Java程序設(shè)計(jì)、Android開(kāi)發(fā)等課程,主持和參與多個(gè)移動(dòng)應(yīng)用系統(tǒng)、網(wǎng)站系統(tǒng)開(kāi)發(fā)項(xiàng)目,主編和參編《Java實(shí)踐教程》《Android高級(jí)應(yīng)用開(kāi)發(fā)案例教程》等。