《Java語言程序設(shè)計(jì)(第2版)》以Java語言的內(nèi)容體系為線索,將面向?qū)ο蟪绦蛟O(shè)計(jì)的原則與特點(diǎn)融入具體的Java程序?qū)嵗。全書共?7章,分別為Java語言概述,Java數(shù)據(jù)類型與表達(dá)式,流程控制語句,數(shù)組和方法,類與對(duì)象,繼承與多態(tài),常用類的使用,抽象類、接口及內(nèi)嵌類,異常處理,Java Applet與Java繪圖,圖形用戶界面編程基礎(chǔ),多線程,流式輸入輸出與文件處理,Java泛型與收集API,高級(jí)圖形用戶界面編程,Java的網(wǎng)絡(luò)編程,JDBC技術(shù)和數(shù)據(jù)庫應(yīng)用。本書在內(nèi)容安排上由淺入深,注重理論與實(shí)際的結(jié)合,例題精練,許多例子是實(shí)際應(yīng)用的寫照,有利于培養(yǎng)學(xué)生解決實(shí)際問題的能力。本書的特點(diǎn)是結(jié)構(gòu)合理、內(nèi)容豐富、通俗易懂,既注重Java基本理論和概念的闡述,又重視結(jié)合實(shí)際應(yīng)用和Java的最新發(fā)展。
本書可作為高等院校學(xué)生學(xué)習(xí)Java語言和面向?qū)ο蟪绦蛟O(shè)計(jì)方法的教材,同時(shí)也可作為廣大自學(xué)者和軟件開發(fā)人員的參考用書。
Java語言是一門由Sun公司開發(fā)的新一代編程語言。從1995年誕生到現(xiàn)在,得到了飛速的發(fā)展。如今,Java涉及計(jì)算機(jī)應(yīng)用的眾多領(lǐng)域,如瀏覽器應(yīng)用、桌面應(yīng)用、Internet服務(wù)器、中間件、個(gè)人數(shù)字代理、嵌入式設(shè)備等。Java語言的面向?qū)ο蟆⒖缙脚_(tái)、多線程等特性,奠定了其作為網(wǎng)絡(luò)應(yīng)用開發(fā)的首選工具的地位。
Java的內(nèi)容體系非常豐富,本書的立足點(diǎn)是Java語言基礎(chǔ)部分。本書以Java語言的基本內(nèi)容體系為線索,將面向?qū)ο蟪绦蛟O(shè)計(jì)的原則與特點(diǎn)融入具體的Java程序?qū)嵗,覆蓋了Java二級(jí)等級(jí)考試的知識(shí)體系要求。
本書共分17章,第1章主要介紹了Java程序的調(diào)試過程和Java面向?qū)ο蟮奶攸c(diǎn)。第2章介紹了Java數(shù)據(jù)類型與表達(dá)式和基本的輸入/輸出操作。第3章介紹了分支語句和循環(huán)語句的使用。第4章介紹了數(shù)組的使用、方法的定義與調(diào)用及方法參數(shù)的傳遞問題。第5章介紹了類與對(duì)象的概念、類成員和實(shí)例成員的訪問差異、this的運(yùn)用以及變量的有效范圍。第6章介紹了繼承與多態(tài)的概念,同時(shí)介紹了訪問控制修飾符、final修飾符以及super的使用,并介紹了Object和Class類的使用。第7章介紹了字符串處理、基本數(shù)據(jù)類型包裝類及日期和時(shí)間的訪問處理。第8章介紹了抽象類與接口以及內(nèi)嵌類的使用。第9章介紹了Java異常處理機(jī)制及編程特點(diǎn)。第10章介紹了Java Applet與Java繪圖,包括Applet的方法、HTML參數(shù)傳遞、AWT圖形繪制以及Applet的多媒體支持等。第11章介紹了圖形用戶界面編程基礎(chǔ),主要包括圖形界面布局、事件處理的特點(diǎn)、簡(jiǎn)單的圖形部件和容器的使用及鼠標(biāo)和鍵盤事件。第12章介紹了Java多線程的編程處理特點(diǎn)和共享資源的訪問控制。第13章介紹了流式輸入/輸出與文件處理,主要包括字節(jié)流和字符流的讀寫、對(duì)象序列化以及文件信息的獲取、文件的管理以及文件的隨機(jī)訪問等。第14章介紹了Java泛型與收集API,主要包括泛型的概念和收集API的定義與使用。第15章介紹了Swing部件和AWT中其他圖形部件的使用,主要包括對(duì)話框、菜單、各類選擇部件和表格(JTabel)等。第16章介紹了Java的網(wǎng)絡(luò)編程,主要包括Socket通信和數(shù)據(jù)報(bào)傳輸編程、URL資源訪問,本章也給出了簡(jiǎn)單聊天程序的綜合設(shè)計(jì)樣例,分別通過Socket通信和數(shù)據(jù)報(bào)多播實(shí)現(xiàn)。第17章介紹了Java數(shù)據(jù)庫訪問編程技術(shù),本章還結(jié)合一個(gè)簡(jiǎn)單考試系統(tǒng)的設(shè)計(jì)給出了一個(gè)綜合設(shè)計(jì)樣例。
Java語言是一門純面向?qū)ο蟮木幊陶Z言,因此,本書也適合面向?qū)ο蟪绦蛟O(shè)計(jì)課程的教學(xué)。面向?qū)ο蠹夹g(shù)總體上包括面向?qū)ο蠓治、設(shè)計(jì)、編程3方面的內(nèi)容。本書僅是面向?qū)ο缶幊蹋煜っ嫦驅(qū)ο蠓治龊驮O(shè)計(jì),讀者還需要學(xué)習(xí)更多的知識(shí)和內(nèi)容,如UML建模等。Java語言是建模實(shí)現(xiàn)的最好程序設(shè)計(jì)語言。
要學(xué)好Java,首先必須熟悉Java語言的基本語法規(guī)則,其次,要盡可能熟悉Java的類庫,掌握類庫的體系和常用類的使用方法。另一方面,軟件設(shè)計(jì)是一個(gè)極富創(chuàng)造性的工作,同時(shí)也是一項(xiàng)工程,只有經(jīng)過嚴(yán)格的系統(tǒng)訓(xùn)練,才能提高自己的編程能力。親自動(dòng)手編程并上機(jī)調(diào)試,是提高編程能力的最好途徑。現(xiàn)代軟件設(shè)計(jì)通常集體完成,每個(gè)人編寫的程序要能讓別人容易理解,所以,代碼的規(guī)范化以及適當(dāng)加注也是提高軟件的效率和可維護(hù)性的重要保證。程序設(shè)計(jì)教學(xué)的最根本目標(biāo)是培養(yǎng)學(xué)生的計(jì)算機(jī)邏輯思維和代碼組織能力,而代碼設(shè)計(jì)的首要目標(biāo)是要做到設(shè)計(jì)算法清晰、代碼規(guī)范,同時(shí)也要考慮代碼在運(yùn)行和存儲(chǔ)效率上的最佳化。希望讀者對(duì)常見問題的解決方法能熟練掌握,以便遇到類似問題時(shí)能快速地寫出代碼。
本書在第1版的基礎(chǔ)上進(jìn)行了補(bǔ)充和修訂,添加了JDK1.7版本中新增的知識(shí),開發(fā)工具由Jcreator改為Eclipse。
本書是筆者多年來教學(xué)和軟件開發(fā)經(jīng)驗(yàn)的總結(jié)。筆者對(duì)書中內(nèi)容進(jìn)行了精心的設(shè)計(jì)和安排。按照由淺入深、循序漸進(jìn)的原則進(jìn)行組織;程序樣例大多簡(jiǎn)短實(shí)用,易于教學(xué)使用和讀者學(xué)習(xí);書中所有代碼均經(jīng)過調(diào)試,許多例子是實(shí)際應(yīng)用的寫照,有利于培養(yǎng)學(xué)生解決實(shí)際問題的能力。
本書可作為高等院校開設(shè)Java語言課程的教材,也可作為讀者自學(xué)Java語言的自學(xué)用書。本書可以考慮安排64學(xué)時(shí)的教學(xué),并安排至少1/3的時(shí)間上機(jī),最好安排一周的課程設(shè)計(jì)。
本書由華東交通大學(xué)丁振凡教授編寫,與本書配套的除教學(xué)PPT課件外,還有Java網(wǎng)絡(luò)教學(xué)平臺(tái)和網(wǎng)絡(luò)教學(xué)課件。通過網(wǎng)絡(luò)教學(xué)平臺(tái)可實(shí)現(xiàn)全方位的師生互動(dòng)。讀者可以訪問華東交大的教學(xué)平臺(tái),網(wǎng)址是http://cai.ecjtu.jx.cn/,來賓賬戶的用戶名和密碼均為123。
由于編者水平所限,加之時(shí)間倉促,疏漏和錯(cuò)誤之處在所難免,懇請(qǐng)廣大讀者批評(píng) 指正。
編 者
第1篇 Java語言基礎(chǔ)部分
第1章 Java語言概述
1.1 面向?qū)ο蟪绦蛟O(shè)計(jì)的特性
1.2 Java開發(fā)和運(yùn)行環(huán)境
1.3 Java程序及調(diào)試步驟
1.3.1 Java應(yīng)用程序的調(diào)試
1.3.2 Java Applet程序的調(diào)試
1.4 在Eclipse環(huán)境下調(diào)試Java程序
1.5 Java語言的特點(diǎn)
1.5.1 簡(jiǎn)單的面向?qū)ο笳Z言
1.5.2 跨平臺(tái)與解釋執(zhí)行
1.5.3 健壯和安全的語言
1.5.4 支持多線程
1.5.5 面向網(wǎng)絡(luò)的語言
1.5.6 動(dòng)態(tài)性
習(xí)題
第2章 Java數(shù)據(jù)類型與表達(dá)式
2.1 Java符號(hào)
2.1.1 標(biāo)識(shí)符
2.1.2 關(guān)鍵字
2.1.3 分隔符
2.1.4 注釋
2.2 數(shù)據(jù)類型與變量
2.2.1 數(shù)據(jù)類型
2.2.2 常量
2.2.3 變量
2.3 表達(dá)式與運(yùn)算符
2.3.1 算術(shù)運(yùn)算符
2.3.2 關(guān)系運(yùn)算符
2.3.3 邏輯運(yùn)算符
2.3.4 位運(yùn)算符
2.3.5 賦值組合運(yùn)算符
2.3.6 其他運(yùn)算符
2.3.7 運(yùn)算符優(yōu)先級(jí)
2.4 數(shù)據(jù)的輸入/輸出
2.4.1 使用標(biāo)準(zhǔn)輸入/輸出流
2.4.2 用swing對(duì)話框?qū)崿F(xiàn)輸入/輸出
2.5 常用數(shù)學(xué)方法
習(xí)題
第3章 流程控制語句
3.1 條件選擇語句
3.1.1 if語句
3.1.2 多分支語句switch
3.2 循環(huán)語句
3.2.1 while語句
3.2.2 do...while語句
3.2.3 for語句
3.2.4 循環(huán)嵌套
3.3 跳轉(zhuǎn)語句
3.3.1 break語句
3.3.2 continue語句
習(xí)題
第4章 數(shù)組和方法
4.1 數(shù)組
4.1.1 一維數(shù)組
4.1.2 多維數(shù)組
4.2 方法
4.2.1 方法聲明
4.2.2 方法調(diào)用
4.2.3 參數(shù)傳遞
4.2.4 遞歸
4.3 Java的命令行參數(shù)
習(xí)題
第2篇 Java面向?qū)ο蠛诵母拍罴皯?yīng)用
第5章 類與對(duì)象
5.1 類的定義
5.2 對(duì)象的創(chuàng)建與引用
5.2.1 創(chuàng)建對(duì)象及訪問對(duì)象成員
5.2.2 對(duì)象的初始化和構(gòu)造方法
5.3 變量作用域
5.4 類變量和靜態(tài)方法
5.4.1 類變量
5.4.2 靜態(tài)方法
5.5 理解this
5.6 使用包組織類
5.6.1 Java API簡(jiǎn)介
5.6.2 建立包
5.6.3 包的引用
習(xí)題
第6章 繼承與多態(tài)
第7章 常用數(shù)據(jù)類型處理類
第8章 抽象類和接口
第3篇 Java語言高級(jí)特性
第9章 異常處理
第10章 Java Applet與Java繪圖
第11章 圖形用戶界面編程基礎(chǔ)
第12章 多線程
第13章 流式輸入/輸出與文件處理
第14章 Java泛型與收集API
第15章 高級(jí)圖形界面編程
第16章 Java的網(wǎng)絡(luò)編程
第17章 JDBC技術(shù)和數(shù)據(jù)庫應(yīng)用
參考文獻(xiàn)