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