前 言
Java 語(yǔ)言自 1995 年 5 月發(fā)布以來(lái),以極為迅猛的勢(shì)頭發(fā)展至今,現(xiàn)已不僅是一門(mén)高級(jí)程序設(shè)計(jì)語(yǔ)言,也是一種完備的技術(shù)體系和開(kāi)發(fā)平臺(tái)。Java 擁有卓越的技術(shù)特性、豐富的編程接口(類庫(kù))和多款功能強(qiáng)大的開(kāi)發(fā)工具平臺(tái),受到廣大編程人員的喜愛(ài)。在當(dāng)下的網(wǎng)絡(luò)時(shí)代,Java 技術(shù)應(yīng)用廣泛,從大型復(fù)雜的企業(yè)級(jí)開(kāi)發(fā)到小型移動(dòng)設(shè)備的開(kāi)發(fā),隨處都可以看到 Java 活躍的身影。對(duì)于一個(gè)想從事 Java 程序開(kāi)發(fā)的人員來(lái)說(shuō),學(xué)好 Java 基礎(chǔ)就變得尤為重要。
本書(shū)初版自 2010 年 9 月出版以來(lái),受到各類高職高專院校廣大師生的青睞。教材覆蓋地域?qū)拸V,使用層次多樣,已被多次印刷。
第 2 版修訂教材從最基礎(chǔ)的內(nèi)容開(kāi)始,詳細(xì)講述了使用 Java 技術(shù)進(jìn)行應(yīng)用程序開(kāi)發(fā)的方法。全書(shū)共分 12 章,內(nèi)容由淺入深,全面涵蓋了 Java 編程的基礎(chǔ)知識(shí)及高級(jí)特性。在保證知識(shí)體系完備、脈絡(luò)清晰、論述精準(zhǔn)的同時(shí),注重培養(yǎng)讀者的動(dòng)手能力,并結(jié)合相應(yīng)的知識(shí)點(diǎn)編寫(xiě)了大量的實(shí)例。
各章節(jié)的主要內(nèi)容如下:
第 1 章 Java 技術(shù)入門(mén)。簡(jiǎn)要介紹 Java 語(yǔ)言的發(fā)展歷史、Java 技術(shù)特性、Java 平臺(tái)核心機(jī)制以及 Java 開(kāi)發(fā)環(huán)境的安裝與配置,并通過(guò)一個(gè)簡(jiǎn)單示例使讀者對(duì) Java 程序的基本結(jié)構(gòu)、運(yùn)行過(guò)程有一個(gè)感性認(rèn)識(shí)。
第 2 章 Java 編程基礎(chǔ)。主要介紹 Java 語(yǔ)言的基本語(yǔ)法、數(shù)據(jù)類型、運(yùn)算符和表達(dá)式以及流程控制語(yǔ)句等知識(shí),為后續(xù)章節(jié)的學(xué)習(xí)提供了語(yǔ)言編程基礎(chǔ)。
第 3 章 數(shù)組。主要介紹 Java 中一維數(shù)組和多維數(shù)組的聲明、創(chuàng)建、初始化以及數(shù)組元素的訪問(wèn)。
第 4 章 面向?qū)ο缶幊坛醪。Java 是面向?qū)ο蟮木幊陶Z(yǔ)言,提供了定義類和對(duì)象等最 基本的功能。如何用面向?qū)ο蟮挠^點(diǎn)去分析和解決問(wèn)題是學(xué)習(xí) Java 語(yǔ)言的重點(diǎn),本章詳細(xì)介紹了 Java 語(yǔ)言的引用數(shù)據(jù)類型—類和對(duì)象的使用方法。
第 5 章 面向?qū)ο缶幊踢M(jìn)階。詳細(xì)介紹了繼承與多態(tài)技術(shù)、抽象類和接口、內(nèi)部類、匿名類等知識(shí)。要掌握好 Java 語(yǔ)言并具有利用 Java 語(yǔ)言解決實(shí)際問(wèn)題的能力,僅學(xué)習(xí)語(yǔ)法規(guī)則是不夠的。本書(shū)從第 6 章開(kāi)始介紹 Java 應(yīng)用程序編程接口(Java API)中常用類的使用以及一些重要的編程技術(shù)。
第 6 章 Java API。Java 應(yīng)用程序編程接口(Java API)是 Oracle 公司開(kāi)發(fā)的 Java 程序類庫(kù),提供給 Java 程序員使用的平臺(tái)和工具,利用這些類庫(kù)中的類和接口可以方便地實(shí)現(xiàn)程序中的各種功能。本章重點(diǎn)介紹常用類的使用。
第 7 章 Java 的異常處理。主要介紹 Java 的異常處理機(jī)制、捕獲并處理異常、自定義異常等。
第 8 章 Java 中的集合類及泛型。主要介紹 Java 集合類的具體語(yǔ)法和使用方式,以及自 JDK5.0 開(kāi)始引入的一種 Java 語(yǔ)言新特性—泛型。
第 9 章 Java 流與文件操作。所有程序都離不開(kāi)信息的輸入和輸出,程序通過(guò)輸入/輸出與外部信息進(jìn)行交互,Java 采用“輸入/輸出流”實(shí)現(xiàn)輸入/輸出操作,即從“流”讀取數(shù)據(jù)或向“流”寫(xiě)入數(shù)據(jù)。本章詳細(xì)介紹了數(shù)據(jù)流的概念以及 java.io 包中豐富的輸入/輸出流類等知識(shí)。
第 10 章 GUI 程序設(shè)計(jì)。詳細(xì)介紹了如何使用 java.awt 包和 javax.swing 包下的組件進(jìn)行圖形用戶界面的應(yīng)用程序開(kāi)發(fā)。
第 11 章 多線程。詳細(xì)介紹了線程的概念、多線程的創(chuàng)建、線程的生命周期及狀態(tài)、多線程同步、線程優(yōu)先級(jí)和調(diào)度的相關(guān)知識(shí)。
第 12 章 Java 數(shù)據(jù)庫(kù)編程。JDBC 是實(shí)現(xiàn) Java 同各種數(shù)據(jù)庫(kù)連接的關(guān)鍵,它提供了將Java 和數(shù)據(jù)庫(kù)連接起來(lái)的程序接口。本章詳細(xì)介紹了在 Java 程序中如何使用 JDBC 實(shí)現(xiàn)數(shù)據(jù)庫(kù)的連接與訪問(wèn)。
本書(shū)內(nèi)容豐富、結(jié)構(gòu)合理、思路清晰、語(yǔ)言簡(jiǎn)練流暢、案例新穎、針對(duì)性強(qiáng)。每一章的開(kāi)始部分概述本章的作用和內(nèi)容,指出本章的學(xué)習(xí)目標(biāo);正文部分結(jié)合每章的知識(shí)點(diǎn)和關(guān)鍵技術(shù),穿插了大量極富實(shí)用價(jià)值的程序案例,每一章的末尾有本章小結(jié),總結(jié)該章的內(nèi)容、重點(diǎn)及難點(diǎn);同時(shí)安排了有針對(duì)性的思考和練習(xí),幫助讀者鞏固所學(xué)內(nèi)容,提高讀者的實(shí)際動(dòng)手能力。
本書(shū)由河北軟件職業(yè)技術(shù)學(xué)院的丁宏偉、劉麗華擔(dān)任主編,李丹、賀晨和許煥新?lián)胃敝骶。丁宏偉和劉麗華負(fù)責(zé)整體結(jié)構(gòu)設(shè)計(jì),丁宏偉負(fù)責(zé)全書(shū)統(tǒng)稿。本書(shū)的第 1~2 章由賀晨編寫(xiě),第 3~4 章和第 6 章由李丹編寫(xiě),第 5 章、第 7 章和第 11 章由丁宏偉編寫(xiě),第 8 章、第 10 章和第 12 章由劉麗華編寫(xiě),第 9 章由許煥新編寫(xiě)。北京尚觀錦程科技有限公司提供了大量的案例,對(duì)本書(shū)的結(jié)構(gòu)和內(nèi)容提出了建議,在此表示感謝。
由于作者水平有限,書(shū)中難免有不足之處,歡迎各位同行和廣大讀者對(duì)本書(shū)提出建議和修改意見(jiàn)。
編 者
目 錄
第 1 章 Java 技術(shù)入門(mén) 1
1.1 Java 概述 1
1.2 Java 平臺(tái)核心機(jī)制 5
1.3 Java 開(kāi)發(fā)環(huán)境的安裝與配置 7
1.4 第一個(gè) Java 應(yīng)用程序 12
1.5 本章小結(jié) 17
1.6 知識(shí)考核 17
第 2 章 Java 編程基礎(chǔ) 18
2.1 Java 的基本語(yǔ)法 18
2.2 數(shù)據(jù)類型 23
2.3 常量和變量 24
2.4 運(yùn)算符和表達(dá)式 27
2.5 流程控制語(yǔ)句 37
2.6 標(biāo)準(zhǔn)輸入/輸出 56
2.7 本章小結(jié) 58
2.8 知識(shí)考核 58
第 3 章 數(shù)組 59
3.1 數(shù)組概述 59
3.2 一維數(shù)組 60
3.3 數(shù)組操作 65
3.4 多維數(shù)組 67
【任務(wù) 3-1】酒店前臺(tái)客房管理程序設(shè)計(jì) 71
3.5 本章小結(jié) 75
3.6 知識(shí)考核 75
第 4 章 面向?qū)ο缶幊坛醪? 76
4.1 類和對(duì)象 76
4.2 方法 84
4.3 變量 93
4.4 隱藏和封裝 95
4.5 本章小結(jié) 101
4.6 知識(shí)考核 101
第 5 章 面向?qū)ο缶幊踢M(jìn)階 102
5.1 類的繼承 102
5.2 多態(tài) 109
5.3 靜態(tài)初始化塊 113
5.4 final 修飾符 117
5.5 抽象類 122
5.6 接口 125
5.7 內(nèi)部類 131
5.8 匿名類 133
5.9 本章小結(jié) 134
5.10 知識(shí)考核 134
第 6 章 Java API 135
6.1 Java API 的概念 135
6.2 java.lang.Object 類—Java 類的共同父類 136
6.3 字符串相關(guān)類型 139
6.4 java.lang.System 類與 java.lang.Runtime 類 144
6.5 封裝類 146
6.6 數(shù)學(xué)相關(guān)類型 149
6.7 本章小結(jié) 150
6.8 知識(shí)考核 150
第 7 章 Java 的異常處理 151
7.1 異常處理的基礎(chǔ)知識(shí) 151
7.2 異常處理機(jī)制 153
7.3 自定義異常類 161
7.4 本章小結(jié) 163
7.5 知識(shí)考核 163
第 8 章 Java 中的集合類及泛型 164
8.1 集合類與數(shù)據(jù)容器 164
8.2 Collection 接口和 Map 接口 165
8.3 列表 167
8.4 集及其實(shí)現(xiàn)類 173
8.5 “鍵-值”對(duì)型的集合 175
8.6 泛型和迭代器 179
8.7 本章小結(jié) 184
8.8 知識(shí)考核 184
第 9 章 Java 流與文件操作 185
9.1 數(shù)據(jù)流的基本概念 185
9.2 Java 的標(biāo)準(zhǔn)數(shù)據(jù)流和輸入/輸出流 186
9.3 字節(jié)流 189
9.4 文件操作 194
9.5 字符流 202
【任務(wù) 9-1】模擬記事本 205
9.6 對(duì)象序列化 209
9.7 本章小結(jié) 213
9.8 知識(shí)考核 213
第 10 章 GUI 程序設(shè)計(jì) 214
10.1 Java GUI 設(shè)計(jì) 214
10.2 GUI 事件處理 227
10.3 Swing 常用組件 238
【任務(wù) 10-1】班級(jí)通訊錄管理系統(tǒng) 261
10.4 本章小結(jié) 276
10.5 知識(shí)考核 276
第 11 章 多線程 277
11.1 多線程概述 277
11.2 線程的創(chuàng)建 279
11.3 線程的生命周期與線程狀態(tài) 282
11.4 線程的調(diào)度 283
11.5 多線程同步 289
11.6 本章小結(jié) 292
11.7 知識(shí)考核 292
第 12 章 Java 數(shù)據(jù)庫(kù)編程 293
12.1 JDBC 基本概念 293
12.2 JDBC 編程常用的類和接口 295
12.3 JDBC 編程訪問(wèn)數(shù)據(jù)庫(kù) 298
12.4 預(yù)處理語(yǔ)句 304
【任務(wù) 12-1】使用 JDBC 實(shí)現(xiàn)班級(jí)通訊錄管理系統(tǒng) 306
12.5 本章小結(jié) 323
12.6 知識(shí)考核 323
參考文獻(xiàn) 324