出版時(shí)間:2012-7-1 出版社:清華大學(xué)出版社 作者:(美) 霍爾頓(Horton, I.) 譯者:梁峰
Tag標(biāo)簽:無
前言
歡迎閱讀《Java 7 入門經(jīng)典》,本書通俗易懂,是學(xué)習(xí)Java語言以及Java平臺(tái)API的綜合性入門指南。本書提供了在Java JDK 7或更高版本環(huán)境下進(jìn)行程序開發(fā)的一些基礎(chǔ)知識(shí)。 本書除了教授Java知識(shí)外,還會(huì)介紹與Java程序員有關(guān)的各種主題。本書的組織結(jié)構(gòu)經(jīng)過了仔細(xì)設(shè)計(jì),符合思維邏輯,讓Java編程學(xué)習(xí)的各個(gè)階段都環(huán)環(huán)相扣。 本書讀者對(duì)象 Java編程應(yīng)用范圍廣泛,而且隨著語言本身以及關(guān)聯(lián)的函數(shù)庫(kù)的增長(zhǎng),Java的應(yīng)用領(lǐng)域仍然在不斷擴(kuò)展。自從發(fā)布以來,Java作為一門面向?qū)ο蟮恼Z言已成為Internet編程、跨平臺(tái)應(yīng)用以及教學(xué)中的首選語言。在筆者看來,這其中有三個(gè)原因:Java與生俱來的系統(tǒng)無關(guān)的特性、Java語言的簡(jiǎn)單性和強(qiáng)大,以及Java作為工具可以有效并輕松實(shí)現(xiàn)的編程任務(wù)的廣泛性。對(duì)于主要的應(yīng)用程序開發(fā),Java是許多程序員的選擇。與其他語言相比,Java能提供便捷的開發(fā)和維護(hù)優(yōu)勢(shì)。此外,還有在各種計(jì)算機(jī)和操作系統(tǒng)中不用修改代碼即可運(yùn)行的內(nèi)在能力。使用Java可以做到更多、更快、更容易。 本書旨在提供對(duì)于Java語言的全面理解以及在一些Java應(yīng)用程序上下文環(huán)境中進(jìn)行編程的經(jīng)驗(yàn),希望讀者能在其中的每個(gè)核心領(lǐng)域都打下堅(jiān)實(shí)的基礎(chǔ)。書中介紹的Java各方面知識(shí)都通過實(shí)際的例子進(jìn)行解釋和說明,這些例子也可以自己創(chuàng)建并運(yùn)行,而且也應(yīng)該自己進(jìn)行試驗(yàn)。每章末尾的練習(xí)有助于對(duì)所學(xué)知識(shí)進(jìn)行嘗試。在理解本書介紹的主題內(nèi)容之后,就能開始編寫有特色而且有效果的Java程序了。 書名中的“入門”更多是指本書的編寫風(fēng)格而不是指讀者的能力水平,所以也可以稱為“直通Java”,這是因?yàn)楸緯慕Y(jié)構(gòu)設(shè)計(jì)合理,不論是已有其他語言編程經(jīng)驗(yàn)的程序員還是剛?cè)腴T的新手,本書都適合閱讀。 本書假定您至少有一點(diǎn)編程的基礎(chǔ),比如應(yīng)該至少理解程序運(yùn)行的基本概念。但是在閱讀本書之前并不需要太多的預(yù)備知識(shí)。本書講解的進(jìn)度雖然有些快,但卻覆蓋了對(duì)Java運(yùn)行工作機(jī)制的所有必要解釋。
內(nèi)容概要
無論學(xué)習(xí)Java是為了編寫嵌入網(wǎng)頁的定制applet,還是為了編寫大型應(yīng)用程序,《Java7入門經(jīng)典》都十分適合閱讀?!禞ava7入門經(jīng)典》是關(guān)于Java語言講解最為細(xì)致、全面的入門書籍,介紹了使用最新的Java JDK 7開發(fā)程序所需要的所有基礎(chǔ)知識(shí)。書中包含大量的示例,清晰地解釋了涉及的關(guān)鍵概念,演示了Java開發(fā)的復(fù)雜細(xì)節(jié)。在閱讀各個(gè)章節(jié)的過程中,您還能獲得無價(jià)的編程經(jīng)驗(yàn),并逐步開始編寫功能全面的Java程序。Ivor Horton在編寫入門類編程圖書方面獨(dú)具心得,著作深受好評(píng)。Java SE 7相對(duì)之前發(fā)布版本更新了超過30%的語言特性,本書從基礎(chǔ)知識(shí)入門,介紹了使用這一最新發(fā)布版本編寫Java程序的方方面面,涵蓋了Java的所有語言新特性,可為讀者打下堅(jiān)實(shí)的基礎(chǔ)。
作者簡(jiǎn)介
作者:(美國(guó))Ivor Horton 譯者:梁峰Ivor Horton是Java、C和C++編程語言方面的杰出作者,由他執(zhí)筆的圖書都非常有名,如《Visual C++ 2010入門經(jīng)典(第5版)》、《C語言入門經(jīng)典(第4版)》、《C++入門經(jīng)典(第3版)》等。他編寫的圖書十分適合初學(xué)者學(xué)習(xí),講解細(xì)膩、全面,示例豐富,深受讀者好評(píng)。Ivor Horton還是私人實(shí)踐方面的系統(tǒng)顧問。
書籍目錄
第1章Java簡(jiǎn)介 1.1 Java概覽 1.2 Java語言的特性 1.3學(xué)習(xí)Java 1.3.1 Java程序 1.3.2 Java學(xué)習(xí)路線圖 1.4 Java環(huán)境 1.5 Java中的面向?qū)ο缶幊?1.5.1什么是對(duì)象 1.5.2如何定義對(duì)象類 1.5.3對(duì)象操作 1.5.4 Java程序語句 1.5.5封裝 1.5.6類與數(shù)據(jù)類型 1.5.7類與子類 1.5.8使用對(duì)象的優(yōu)勢(shì) 1.5.9標(biāo)記 1.5.10泛型類 1.6 Java程序結(jié)構(gòu) 1.6.1 Java的類庫(kù) 1.6.2 Java應(yīng)用程序 1.7 Java和Unicode 1.8 小結(jié) 1.9資源 第2章程序、數(shù)據(jù)、變量和計(jì)算 2.1數(shù)據(jù)和變量 2.1.1變量的命名 2.1.2變量名與Unicode 2.1.3變量與類型 2.2整數(shù)數(shù)據(jù)類型 2.3浮點(diǎn)數(shù)數(shù)據(jù)類型 2.3.1浮點(diǎn)數(shù)字面量 2.3.2聲明浮點(diǎn)型變量 2.4固定變量的值 2.5算術(shù)運(yùn)算 2.5.1整數(shù)計(jì)算 2.5.2整數(shù)除法和余數(shù) 2.5.3增量與減量運(yùn)算符 2.5.4短整數(shù)類型的計(jì)算 2.5.5整數(shù)算術(shù)中的錯(cuò)誤 2.5.6浮點(diǎn)計(jì)算 2.5.7其他浮點(diǎn)算術(shù)運(yùn)算符 2.5.8浮點(diǎn)算術(shù)中的錯(cuò)誤情況 2.5.9混合算術(shù)表達(dá)式 2.5.10顯式轉(zhuǎn)換 2.5.11賦值中的自動(dòng)類型轉(zhuǎn)換 2.6 op=運(yùn)算符 2.7數(shù)學(xué)函數(shù)和常量 2.8存儲(chǔ)字符 2.8.1字符轉(zhuǎn)義序列 2.8.2字符算術(shù) 2.9位運(yùn)算 2.9.1使用AND和OR運(yùn)算符 2.9.2使用異或運(yùn)算符 2.9.3位移操作 2.9.4位操作方法 2.10取值范圍為固定整數(shù)值集合自變量 2.11布爾變量 2.12運(yùn)算符的優(yōu)先級(jí) 2.13程序注釋 2.14 小結(jié) 第3章循環(huán)與邏輯 3.1 決策 3.1.1 比較 3.1.2 if語句 3.1.3嵌套的if語句 3.1.4比較枚舉值 3.2邏輯運(yùn)算符 3.2.1邏輯與操作 3.2.2邏輯或操作 3.2.3異或操作 3.2.4布爾非操作 3.2.5使用標(biāo)準(zhǔn)庫(kù)方法測(cè)試字符 3.3條件運(yùn)算符 3.4 switch語句 3.5變量的作用域 3.6循環(huán) 3.6.1循環(huán)的種類 3.6.2使用浮點(diǎn)值計(jì)數(shù) 3.6.3嵌套循環(huán) 3.6.4 continue語句 3.6.5帶標(biāo)簽的continue語句 3.6.6在循環(huán)中使用break語句 3.7 斷言 3.8 小結(jié) 第4章數(shù)組與字符串 4.1 數(shù)組 4.1.1數(shù)組變量 4.1.2定義數(shù)組 4.1.3數(shù)組長(zhǎng)度 4.1.4訪問數(shù)組元素 4.1.5重用數(shù)組變量 4.1.6初始化數(shù)組 4.1.7使用數(shù)組 4.1.8二維數(shù)組 4.1.9字符數(shù)組 4.2字符串 4.2.1字符串字面量 4.2.2創(chuàng)建String對(duì)象 4.2.3字符串?dāng)?shù)組 4.3字符串操作 4.3.1連接字符串 4.3.2比較字符串 4.3.3字符串排序 4.3.4訪問字符串中的字符 4.3.5在字符串中查找字符 4.3.6查找子字符串 4.3.7提取子字符串 4.3.8 String對(duì)象的修改版本 4.3.9從String對(duì)象創(chuàng)建字符數(shù)組 4.3.10使用字符串執(zhí)行基于集合的for循環(huán) 4.3.11在字符串中獲取字節(jié)數(shù)組形式的字符 4_3.12從字符數(shù)組中創(chuàng)建String對(duì)象 4.4可變字符串 4.4.1創(chuàng)建StringBuffer對(duì)象 4.4.2 StringBuffer對(duì)象的容量 4.4.3為StringBuffer對(duì)象修改字符串的長(zhǎng)度 4.4.4增長(zhǎng)StringBuffer對(duì)象 4.4.5尋找子字符串的位置 4.4.6替換緩沖區(qū)中的子字符串 4.4.7插入字符串 4.4.8從可變字符串中提取字符 4.4.9可變字符串的其他操作 4.4.10從StringBuffer對(duì)象創(chuàng)建String對(duì)象 4.5 小結(jié) 第5章定義類 5.1類的定義 5.1.1類定義中的域 5.1.2類定義中的方法 5.1.3訪問變量和方法 5.1.4 Final域 5.2定義類 5.3定義方法 5.3.1方法的返回值 5.3.2參數(shù)列表 5.3.3定義類方法 5.3.4訪問方法中的類數(shù)據(jù)成員 5.3.5變量this 5.3.6初始化數(shù)據(jù)成員 5。4構(gòu)造函數(shù) 5.4.1默認(rèn)構(gòu)造函數(shù) 5.4.2創(chuàng)建類的對(duì)象 5.5定義和使用類 5.6方法重載 5.6.1多個(gè)構(gòu)造函數(shù) 5.6.2使用構(gòu)造函數(shù)復(fù)制對(duì)象 5.7使用對(duì)象 5.8遞歸 5.9理解包 5.9.1對(duì)類打包 5.9.2將類從包添加到程序中 5.9.3程序中的包和名稱 5.9.4導(dǎo)入靜態(tài)類成員 5.9.5標(biāo)準(zhǔn)包 5.10類成員的訪問控制 5.10.1使用訪問屬性 5.10.2設(shè)定訪問屬性 5.10.3選擇訪問屬性 5.11 嵌套類 5.1 1.1靜態(tài)嵌套類 5.11.2使用非靜態(tài)嵌套類 5.11.3使用非頂級(jí)類的嵌套類 5.11.4本地嵌套類 5.12 小結(jié) 第6章擴(kuò)展類與繼承 6.1使用已有的類 6.2類繼承 6.2.1繼承數(shù)據(jù)成員 6.2.2繼承方法 6.2.3覆蓋基類方法 6.3@Override標(biāo)記 6.4選擇基類訪問屬性 6.5 多態(tài) 6.6多級(jí)繼承 6.7抽象類 6.8通用超類 6.8.1 toString0方法 6.8.2判定對(duì)象的類型 6.8.3復(fù)制對(duì)象 6.9接收可變數(shù)目參數(shù)的方法 6.10轉(zhuǎn)換對(duì)象 6.10.1轉(zhuǎn)換對(duì)象的時(shí)機(jī) 6.10.2識(shí)別對(duì)象 6.11枚舉進(jìn)階 6.12設(shè)計(jì)類 6.13使用final修飾符 6.14接口 6.14.1在程序中封裝常量 6.14.2用接口聲明方法 6.14.3擴(kuò)展接口 6.14.4使用接口 6.14.5將接口類型作為方法的參數(shù)使用 6.14.6在接口定義中嵌套類 6.14.7接口與真實(shí)環(huán)境 6.15匿名類 6.16 小結(jié) 第7章異常 7.1異常的基本思想 7.2異常類型 7.2.1 Error類型的異常 7.2.2 RuntimeException類型的異常 7.2.3 Exception類的其他子類 7.3處理異常 7.3.1 設(shè)定方法能夠拋出的異常 7.3.2處理異常 7.3.3 try代碼塊 7.3.4 catch代碼塊 7.3.5在一個(gè)代碼塊中捕獲多種異常類型 7.3.6 finally代碼塊 7.3.7構(gòu)造方法 7.3.8執(zhí)行順序 7.3.9嵌套的try代碼塊 7.3.10重新拋出異常 7.4異常對(duì)象 7.4.1 Throwable類 7.4.2標(biāo)準(zhǔn)異常 7.5定義自己的異常 7.5.1定義異常類 7.5.2拋出自己的異常 7.5.3異常的拋出策略 7.6 小結(jié) 第8章理解流 8.1流與輸入輸出操作 8.2流的概念 8.2.1輸入流與輸出流 8.2.2二進(jìn)制流與字符流 8.3輸入輸出類 8.3.1基本的輸入流操作 8.3.2緩沖輸入流 8.3.3基本的輸出流操作 8.3.4 Reader和Writer 8.4標(biāo)準(zhǔn)流 8.4.1從鍵盤讀入數(shù)據(jù) 8.4.2寫到命令行中 8.4.3 printf()方法 8.4.4將數(shù)據(jù)格式化為字符串 8.5 小結(jié) 第9章訪問文件與目錄 9.1訪問文件系統(tǒng) 9.2使用Path對(duì)象 9.2.1訪問系統(tǒng)屬性 9.2.2設(shè)置系統(tǒng)屬性 9.2.3測(cè)試和檢查Path對(duì)象 9.2.4查詢文件和目錄 9.2.5獲取文件屬性 9.2.6其他的路徑操作 9.3創(chuàng)建與刪除目錄和文件 9.3.1創(chuàng)建目錄 9.3.2創(chuàng)建文件 9.3.3刪除文件和目錄 9.4獲取目錄內(nèi)容 9.5 關(guān)閉流 9.6移動(dòng)與復(fù)制文件和目錄 9.6.1對(duì)文件或目錄重命名 9.6.2復(fù)制文件和目錄 9.6.3遍歷文件樹 9.7 小結(jié) 第10章寫文件 10.1文件I/O基礎(chǔ) 10.2文件輸出 10.3通過輸出流寫文件 …… 第11章讀文件 第12章序列化對(duì)象 第13章泛型 第14章集合框架 第15章一組有用的類 第16章線程 第17章創(chuàng)建窗口 第18章處理事件 第19章在窗口中繪圖 第20章擴(kuò)展GUI 第21章填充和打印文檔 第22章Java和XML 第23章創(chuàng)建和修改XML文檔
章節(jié)摘錄
版權(quán)頁: 插圖: 1)十六進(jìn)制字面量 Java中的十六進(jìn)制字面量在開頭都有o)【或0X,而且遵循使用字母A到F(或者a到f)分別表示數(shù)字10到15的約定。如果對(duì)十六進(jìn)制不是很熟悉,這里有一些例子: 如果不熟悉十六進(jìn)制數(shù),可以在附錄8中找到有關(guān)它們工作方式的說明。上面所有的十六進(jìn)制字面量都是int類型。如果想要設(shè)定一個(gè)long類型的十六進(jìn)制字面量,就必須在字面量后面添加一個(gè)L,就像對(duì)十進(jìn)制字面量一樣。例如,0xFL是一個(gè)與十進(jìn)制值l5等同的十六進(jìn)制字面量。當(dāng)然,可以將一個(gè)字面量,例如0xAABBCCD9L寫成0xAABB_CCD9L。這里的下劃線字符將十六進(jìn)制數(shù)字每4個(gè)分成一組。每組的4個(gè)十六進(jìn)制數(shù)對(duì)應(yīng)內(nèi)存中的兩個(gè)字節(jié)。與十進(jìn)制整數(shù)字面量一樣,下劃線只能在十六進(jìn)制字面量的數(shù)字之間出現(xiàn),因此0x_3ABC和0x3ABC_都不對(duì)。 2)二進(jìn)制字面量 有時(shí),將整數(shù)字面量設(shè)置為二進(jìn)制值更加方便。在一個(gè)字面量的前面加上0b或0B就能將其標(biāo)識(shí)為一個(gè)二進(jìn)制數(shù)。在這種情況下,數(shù)字只能是0或1。例如,0b110010101011或0B110010101011和0xCAB以及十進(jìn)制值3243一樣。也可以在二進(jìn)制字面量中使用下劃線字符,所以可以將值寫為Ob1100 1010 1011,那樣更容易閱讀。每組的4個(gè)二進(jìn)制數(shù)對(duì)應(yīng)一個(gè)十六進(jìn)制數(shù)。當(dāng)然,二進(jìn)制字面量也可以是long類型;只需要在數(shù)字后面附加一個(gè)L。0b_1000和0b1000_都不正確,因?yàn)橄聞澗€只能在數(shù)字之間出現(xiàn)。 3)八進(jìn)制字面量 寫八進(jìn)制數(shù)字字面量時(shí)要以零開頭,所以035和067都是int類型的八進(jìn)制數(shù),而0777777L是long類型的八進(jìn)制字面量,后者也可以寫成0777_777L。八進(jìn)制數(shù)只能使用數(shù)字0~7,而且每個(gè)八進(jìn)制數(shù)都定義為3比特。在以前機(jī)器都用3比特倍數(shù)的長(zhǎng)字來存儲(chǔ)數(shù)字時(shí),經(jīng)常使用八進(jìn)制數(shù)。 現(xiàn)在很少有必要使用八進(jìn)制數(shù),但是必須注意不要意外使用它們。如果在一個(gè)整數(shù)字面量的前面添加一個(gè)0,Java編譯器就會(huì)認(rèn)為在指定一個(gè)八進(jìn)制值。除非其中一個(gè)數(shù)字比7大,導(dǎo)致編譯器將其標(biāo)記為錯(cuò)誤,否則將無法知道該錯(cuò)誤,而這個(gè)數(shù)字也不會(huì)是想象中的值。 2.2.1聲明整型變量 如前所述,可以使用如下語句聲明long類型的變量: long bigOne; 該語句是對(duì)變量bigOne的聲明,指定變量bigOne存儲(chǔ)一個(gè)long類型的值。編譯該語句時(shí),會(huì)為變量bigOne分配8字節(jié)的內(nèi)存。Java不會(huì)自動(dòng)初始化一個(gè)這樣的變量。如果想要變量有一個(gè)初始值,而不是使用內(nèi)存上次使用后留下來的無效值,就必須在聲明中指定自己的值。為了聲明變量bigOne并初始化為2,999,999,999,只需要這樣寫: long bigOne=2_999_999_999L; 這會(huì)將該變量設(shè)置為等號(hào)后面的值。在聲明變量時(shí)總是初始化是一個(gè)很好的實(shí)踐。在字面量中插入下劃線是為了使它易讀。注意如果在計(jì)算中使用沒有賦值的變量,程序?qū)o法編譯。有時(shí)候如果不在聲明變量時(shí)對(duì)其初始化,編譯器就不能在使用該變量之前判斷出它是否已經(jīng)初始化,即使看起來很明顯已經(jīng)初始化。這也會(huì)被標(biāo)記為一個(gè)錯(cuò)誤,但是如果能在聲明這些變量時(shí)總是初始化它們,就可以避免這些問題。
編輯推薦
《Java 7入門經(jīng)典》為編程導(dǎo)師Ivor Horton最新力作。
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載