定 價:49 元
叢書名:高等學校計算機專業(yè)規(guī)劃教材
- 作者:吳倩編著
- 出版時間:2016/8/1
- ISBN:9787111545095
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TP312JA
- 頁碼: 351頁
- 紙張:膠版紙
- 版次:2
- 開本:16K
本書以面向對象的設計思想為主線,首先從Java語言的特性介紹入手,詳細講解Java的基礎語法知識;然后循序漸進地解釋面向對象三大特征和接口等重要知識點,并剖析其應用及程序設計方法;最后進一步深入講解Java在輸入/輸出、Java集合框架、JDBC連接數(shù)據(jù)庫、圖形用戶界面、多線程等方面的編程方法。此外,本書內(nèi)容還涉及一些Java高級主題,包括高級并發(fā)、Socket網(wǎng)絡編程、Java NIO以及Android圖形用戶界面開發(fā)等基本理論及實用開發(fā)技術。本書全面整合了JDK 5~JDK 8的主要特性,力求與當今Java技術的工程應用保持同步。在例題與習題的選用與設計上深入淺出,強調(diào)連貫性與實用性,以期通過實踐鍛煉讀者的面向對象程序設計能力。
第2版說明本書第1版于2012年9月出版,第2版在第1版的基礎上,結合當今Java發(fā)展的最新技術,廣泛聽取了讀者和同行的建議,并根據(jù)作者在授課和開發(fā)過程中的實踐經(jīng)驗重新整編。
本書在保持第1版Java基礎知識體系的同時,進一步從實踐的角度闡述Java面向對象的編程思想及編程技巧,與當前業(yè)內(nèi)Java技術的最新發(fā)展相結合,細化、深化某些技術要點,強調(diào)Java應用程序的設計思想及技巧,體現(xiàn)Java的知識性、系統(tǒng)性及先進性。主要更新知識點如下:
1.緊密結合Java的最新發(fā)展,在JDK 5、JDK 6、JDK 7的基礎上,繼續(xù)增添JDK 8的語法新特性。
2.刪除第1版的Java applet部分,因為該技術如今已經(jīng)很少使用。
3.增加Java網(wǎng)絡應用知識,增添Java Socket網(wǎng)絡編程和Java非阻塞IO(NIO),并以實例展示Socket 、NIO結合多線程在網(wǎng)絡及分布式系統(tǒng)中的綜合應用。
4.深化多線程編程,同時進一步細化并深入分析多線程高級并發(fā)部分,補充了線程池、阻塞隊列等內(nèi)容。
5.增加Android圖形用戶界面開發(fā)簡介。結合當今Java在GUI方面的應用重點已經(jīng)轉移到Android 平臺的特點,介紹Android系統(tǒng)架構及組件,并以實例的形式講解Android GUI基礎控件的開發(fā)。
6.其他增添及更新的細節(jié)包括:Java基礎部分的注釋(Annotation)、反射機制,Java集合框架的Collections類、比較器、泛型,JDBC連接數(shù)據(jù)庫的調(diào)用存儲過程,等等。
本書背景作為當今最流行而且不斷發(fā)展的面向對象程序設計語言,Java語言隨著網(wǎng)絡的發(fā)展而被廣泛普及、應用,Java語言已經(jīng)和我們的日常生活息息相關。信息化的發(fā)展帶動了Java在金融、通信、制造、電子政務、移動設備及消費類電子產(chǎn)品等領域日益廣泛的應用,尤其是近年來Android移動平臺的推廣,又為Java語言注入了新的活力,使之成為IT行業(yè)一顆璀璨的明星。
近年來,市場對Java開發(fā)人才的需求旺盛,激發(fā)了廣大開發(fā)人員學習Java語言的興趣。但是,對于很多Java初學者來說,如何選擇適合自己的教材,從而快速提高Java編程水平,是很重要的事情。
本書作者具有豐富的教學經(jīng)驗及工業(yè)界軟件開發(fā)經(jīng)歷,書的設計力求切合實際,盡量為縮小計算機專業(yè)畢業(yè)生與工業(yè)界人才需求之間的差距做出一些努力,同時引導讀者深入理解Java程序設計,少走彎路。本書從始至終貫穿著面向對象的編程思想,以Java語言為實現(xiàn)方式,強調(diào)Java語言的精華在于“面向對象思想”。本書覆蓋的內(nèi)容全面,從Java語言的基礎知識一直到Java類庫的應用、數(shù)據(jù)庫程序設計及Android平臺程序開發(fā)。使讀者能夠從通俗易懂的語言中理解程序設計理念,幫助讀者認識到任何一種面向對象程序設計語言的語法和風格可能有所不同,但是其編程思想都是一致的,編程語言的學習不應該局限于表面的語法格式,而是應該深入了解程序設計語言的本質規(guī)律,掌握其精髓思想,才能真正學會并運用一門程序語言。
本書特色本書的主要特色為通俗易懂、實踐性強、例題豐富,展現(xiàn)了Java最新技術。
本書著重探究應用設計技巧及解決方案,始終以面向對象設計理念為主線,解析面向對象程序設計思想及方法,強調(diào)語法知識的學習應以理解編程思想為前提。
本書強調(diào)Java語言的實踐性,提供大量實用性很強的編程實例,實例生動、完整、連貫性強,并配有與開發(fā)相關的重要技術要點提示。采用業(yè)內(nèi)流行的eclipse集成開發(fā)環(huán)境作為開發(fā)平臺,配合UML(統(tǒng)一建模語言)表述程序分析及設計。另外還提供了一個覆蓋所有重要知識點的綜合性開發(fā)實例(電子產(chǎn)品商店管理系統(tǒng)),該實例隨著面向對象程序設計理論的深入、Java語法知識點的展開,由淺入深,并逐步完善和擴展規(guī)模,最后形成一個具有圖形用戶界面、實現(xiàn)數(shù)據(jù)庫訪問操作的、規(guī)模適中的應用管理系統(tǒng),幫助學生理解Java編程的設計與實現(xiàn)。
本書強調(diào)Java語言的更替性及應用性,緊密結合Java語言不斷發(fā)展的特色,覆蓋內(nèi)容全面,理論闡述簡潔淺顯,具有較強的可讀性。本書也力求反映Java技術的新成果、新趨勢,將JDK 5、JDK 6、JDK 7及JDK 8的最新技術和思想方法介紹給讀者。本書還簡要介紹了目前Java語言應用最為廣泛的Android移動平臺以及基本的Android圖形用戶界面編程方法。
本書習題側重于培養(yǎng)學生自主學習、自行探索、獨立解決問題以及團隊協(xié)作的能力。學生不僅可以練習編程,而且還能自行設計程序架構,學習查閱資料解決問題。習題具有連貫性,循序漸進,分組協(xié)作,最終逐步擴展為一個基于TCP/IP及多線程的完整C/S架構應用系統(tǒng)。
主要內(nèi)容全書分為三部分,共14章:第一部分,全面闡述面向對象程序設計思想及Java基礎語法,內(nèi)容包括第1章、第2章;第二部分,結合實例,以Java語言講述面向對象的三大特征及程序設計方法,內(nèi)容包括第3~6章;第三部分,講述Java語言類庫、輸入/輸出、多線程、圖形用戶界面、數(shù)據(jù)庫、網(wǎng)絡及Android無線移動通信平臺中的圖形用戶界面,內(nèi)容包括第7~14章。
各章內(nèi)容介紹如下:
第1章介紹面向對象的基本概念、面向對象的三大特征(封裝、繼承和多態(tài))、類的建模及其結構層次設計、面向對象程序設計原則,并對Java語言特點及開發(fā)環(huán)境eclipse進行了概要的介紹。
第2章全面介紹Java語言基礎知識及語法,具體包括Java語言基本元素、基本數(shù)據(jù)類型、引用數(shù)據(jù)類型、基本數(shù)據(jù)類型的封裝類、運算符、表達式及流程控制。
第3章講述類與對象。從如何設計類開始,到對象的創(chuàng)建及使用方法、static靜態(tài)成員的基本特征、方法重載、包的概念、類的訪問控制,以及基礎類庫。
第4章講述異常處理,包括異常的概念、異常的分類、異常的處理機制、自定義異常類。
第5章講述類的重用,包括類的繼承和類的組合兩種方式的語法實現(xiàn),并介紹了抽象類與抽象方法、類成員方法的覆蓋。
第6章講述接口與多態(tài),從接口存在的必要性入手,逐步引導讀者理解接口如何在程序結構中實現(xiàn)多重繼承、多態(tài)的概念及實現(xiàn)、多態(tài)的適用環(huán)境,以及內(nèi)部類的概念及使用方法。
第7章講述Java的集合框架及其提供的幾種集合,并介紹了泛型的相關知識及其在集合中的應用。
第8章講述輸入/輸出,包括I/O流的概念、I/O流的分類、文件讀寫以及對象的序列化。
第9章講述JDBC訪問數(shù)據(jù)庫,主要介紹JDBC技術的原理、JDBC API、通過JDBC訪問數(shù)據(jù)庫、實現(xiàn)與數(shù)據(jù)庫的連接,以及訪問數(shù)據(jù)庫的一系列操作。
第10章講述Java圖形用戶界面,具體包括Java圖形用戶界面類庫、Swing的組件、Swing組件的層次結構、Swing GUI 程序、事件處理機制、eclipse下的可視化圖形界面編程。
第11章講述Java多線程,具體包括進程與線程的概念、多線程編程基礎、線程的生命周期、線程的常用方法、多線程的編程方式、死鎖等相關問題的處理。擴展講解了高級并發(fā)提供的幾種機制,包括Lock與Condition、讀寫鎖、阻塞隊列、線程池等。
第12章講述Java Socket網(wǎng)絡編程,包括基于TCP/UDP 的單線程C/S模式或者多線程C/S模式。
第13章講述Java 非阻塞IO(NIO),包括Java NIO包含的3個核心對象緩沖區(qū)、通道、選擇器及其操作方法,以及NIO Socket的通信機制。
第14章講述Android圖形用戶界面開發(fā),包括Android框架及應用程序組件、開發(fā)環(huán)境配置、Android 圖形用戶界面的各種控件及其使用示例。
本書提供完整的示例程序來講解基本概念,所有程序都在eclipse4.5 Mars環(huán)境下編譯運行通過,本書提供電子教學課件及各章例題。
致謝在書稿的完成過程中,機械工業(yè)出版社的編輯此書的出版給予了周到的安排和支持,同時也得到了家人、朋友的大力支持,使此書得以在短時間內(nèi)出版,在此對他們表示真摯的感謝!
盡管作者具有程序設計方面的教學經(jīng)驗以及軟件項目開發(fā)經(jīng)驗,但由于時間倉促及水平有限,難免存在不妥之處,懇請廣大讀者給予批評指正。
編者2016年5月
前言
教學建議
第1章 面向對象程序設計思想 1
1.1 類和對象 1
1.2 面向對象程序設計的三大特征 3
1.2.1 封裝 4
1.2.2 繼承 4
1.2.3 多態(tài) 5
1.3 面向對象的程序設計 7
1.3.1 類的建模 7
1.3.2 類的層次結構設計 8
1.3.3 面向對象程序設計原則 9
1.4 Java語言簡介 10
1.4.1 Java語言的特點 12
1.4.2 Java程序的開發(fā)環(huán)境 13
1.4.3 第一個Java程序 14
本章小結 19
習題 19
第2章 Java語言基礎知識 21
2.1 Java語言基本元素 21
2.2 Java基本數(shù)據(jù)類型 22
2.3 引用數(shù)據(jù)類型 26
2.3.1 枚舉 26
2.3.2 數(shù)組 27
2.4 基本數(shù)據(jù)類型的封裝類 34
2.5 運算符及表達式 37
2.5.1 算術運算符 37
2.5.2 關系運算符 39
2.5.3 邏輯運算符與邏輯表達式 39
2.5.4 賦值運算符 40
2.5.5 位運算符 40
2.5.6 其他運算符 41
2.5.7 表達式 42
2.6 Java控制語句 42
2.6.1 分支結構 42
2.6.2 循環(huán)結構 44
2.6.3 中斷結構 46
本章小結 49
習題 49
第3章 類與對象 51
3.1 類與對象的創(chuàng)建 51
3.2 對象的初始化 54
3.3 數(shù)據(jù)成員及方法 56
3.3.1 訪問數(shù)據(jù)成員及方法 56
3.3.2 方法中參數(shù)傳遞的問題 57
3.3.3 toString()方法 58
3.4 類的使用 60
3.4.1 static數(shù)據(jù) 60
3.4.2 static方法 62
3.4.3 終態(tài)final 63
3.4.4 方法重載 63
3.4.5 this指針 64
3.4.6 對象的回收 67
3.4.7 包 68
3.4.8 類的訪問控制 71
3.5 Java基礎類庫 73
3.5.1 語言包java.lang 74
3.5.2 實用包java.util 81
3.6 Java注釋 83
3.6.1 Annotation的定義 84
3.6.2 基本Annotation 85
3.6.3 Annotation的用途 85
3.6.4 Java文檔生成器 86
本章小結 89
習題 89
第4章 異常處理 91
4.1 異常的概念 91
4.2 異常的分類 92
4.3 異常的處理機制 94
4.3.1 非檢查型異常處理 94
4.3.2 檢查型異常處理 96
4.4 自定義異常類 101
本章小結 104
習題 105
第5章 類的重用 106
5.1 類的重用概述 106
5.2 重用方式之一——繼承 107
5.2.1 父類與子類 107
5.2.2 繼承的語法 107
5.2.3 子類的數(shù)據(jù)成員 110
5.2.4 子類的方法 111
5.2.5 繼承關系下的構造方法 114
5.3 抽象類與抽象方法 117
5.4 重用方式之二——類的組合 121
5.4.1 組合的語法 121
5.4.2 組合與繼承的結合 123
本章小結 126
習題 127
第6章 接口與多態(tài) 128
6.1 接口的概念及用途 128
6.2 接口的聲明及實現(xiàn) 129
6.3 接口與抽象類的比較 140
6.4 多態(tài) 144
6.4.1 向上轉型的概念及方法調(diào)用 145
6.4.2 靜態(tài)綁定和動態(tài)綁定 145
6.4.3 多態(tài)的實現(xiàn) 147
6.4.4 多態(tài)的應用 148
6.5 內(nèi)部類 149
6.5.1 內(nèi)部類的概念 150
6.5.2 靜態(tài)內(nèi)部類 151
6.5.3 內(nèi)部類實現(xiàn)接口及抽象類 151
6.5.4 方法中的內(nèi)部類 152
6.5.5 匿名的內(nèi)部類 153
本章小結 154
習題 154
第7章 Java集合框架 156
7.1 集合框架概述 156
7.2 Collection接口 158
7.3 List接口 158
7.3.1 LinkedList 159
7.3.2 ArrayList 159
7.4 泛型 160
7.4.1 泛型的定義及實例化 160
7.4.2 泛型在集合中的應用 162
7.5 迭代器 165
7.6 Set接口 167
7.7 Map接口 169
7.8 Collections類 172
7.9 比較器 173
7.10 Lambda表達式 175
本章小結 177
習題 177
第8章 輸入/輸出 178
8.1 I/O流的概念 178
8.2 I/O流的種類 179
8.2.1 字節(jié)流 179
8.2.2 字符流 180
8.2.3 標準輸入/輸出數(shù)據(jù)流 182
8.3 文件輸入/輸出流 185
8.3.1 字符輸出流 185
8.3.2 字符輸入流 187
8.3.3 字節(jié)輸出流 188
8.3.4 字節(jié)輸入流 190
8.3.5 File類 193
8.3.6 隨機文件的讀寫 195
8.4 對象序列化 197
本章小結 200
習題 200
第9章 JDBC 201
9.1 JDBC簡介 201
9.2 JDBC架構 201
9.3 JDBC API 202
9.4 在eclipse環(huán)境下通過JDBC訪問數(shù)據(jù)庫 204
9.4.1 配置開發(fā)環(huán)境 204
9.4.2 調(diào)用JDBC API編寫應用程序 205
9.5 JDBC處理存儲過程 216
9.6 SQLException 218
9.7 控制事務 218
9.8 JDBC其他相關用法 219
本章小結 220
習題 220
第10章 Java圖形用戶界面 221
10.1 Java圖形用戶界面類庫 221
10.2 Swing的組件 222
10.3 Swing組件的層次結構 223
10.4 Swing GUI程序 224
10.4.1 頂層容器 225
10.4.2 中間層容器 226
10.4.3 布局管理器 228
10.4.4 Swing組件 231
10.5 事件處理機制 236
10.5.1 事件響應 236
10.5.2 事件處理的實現(xiàn)方法 239
10.6 Swing Designer可視化圖形界面編程 244
本章小結 256
習題 256
第11章 多線程 257
11.1 進程與線程 257
11.2 多線程創(chuàng)建方式 258
11.2.1 Thread類 258
11.2.2 Runnable接口 260
11.3 守護線程 261
11.4 線程的生命周期 262
11.5 線程的常用方法 264
11.6 線程的優(yōu)先級 268
11.7 多線程的編程方式 268
11.7.1 不相關的線程 269
11.7.2 相關但無須同步的線程 269
11.7.3 同步線程 270
11.7.4 交互式線程 274
11.8 死鎖 278
11.9 高級并發(fā) 279
11.9.1 Lock和Condition 280
11.9.2 讀寫鎖 282
11.9.3 阻塞隊列(BlockingQueue) 284
11.9.4 線程池 287
本章小結 289
習題 290
第12章 Java Socket網(wǎng)絡編程 291
12.1 網(wǎng)絡通信協(xié)議 291
12.2 Socket基本概念 293
12.3 TCP Socket編程 294
12.3.1 TCP Socket點到點通信 294
12.3.2 TCP Socket多線程通信 299
12.4 UDP Socket編程 302
12.4.1 UDP Socket點到點通信 302
12.4.2 UDP Socket多線程通信 307
12.4.3 UDP Socket組播通信 308
本章小結 310
習題 310
第13章 Java非阻塞IO(NIO) 312
13.1 Java NIO與標準IO的區(qū)別 312
13.2 NIO的核心對象 312
13.2.1 通道 313
13.2.2 緩沖區(qū) 317
13.2.3 選擇器 319
13.3 NIO Socket通信單線程模式 321
13.4 基于反應器的NIO Socket多線程模式 324
本章小結 325
習題 325
第14章 Android圖形用戶界面開發(fā)簡介 326
14.1 Android概述 326
14.2 Android系統(tǒng)架構 327
14.3 Android應用程序組件 328
14.4 Android的圖形界面元素 329
14.4.1 視圖和視圖組 329
14.4.2 布局管理 331
14.4.3 事件驅動 331
14.5 eclipse下的Android開發(fā)環(huán)境配置 332
14.6 Android圖形用戶界面開發(fā)示例 335
14.6.1 Android應用程序目錄結構 335
14.6.2 創(chuàng)建按鈕示例 336
14.7 常用的Android控件 338
本章小結 350
習題 351
參考文獻 352