Java 2實用教程(第5版)

Java 2實用教程(第5版)

《Java 2實用教程(第5版)》是由耿祥義、張躍平編著,2017年清華大學出版社出版的高等學校Java課程系列教材、普通高等教育“十一五”國家級規劃教材。該教材既可作為高等院校相關專業Java程式設計的教材,也可供自學者及軟體開發人員參考。

全書共分15章,分別介紹了Java的基本數據類型,運算符、表達式和語句,類與對象,子類與繼承,接口與實現,內部類與異常類,常用實用類,組件及事件處理,輸入、輸出流,JDBC與MySQL資料庫,Java多執行緒機制,Java網路編程,圖形、圖像與音頻,泛型與集合框架等內容。

基本介紹

  • 書名:Java 2實用教程(第5版)
  • 作者:耿祥義、張躍平
  • ISBN:9787302464259
  • 類別:普通高等教育“十一五”國家級規劃教材
  • 頁數:465頁
  • 出版社:清華大學出版社
  • 出版時間:2017年5月1日
  • 裝幀:平裝
  • 開本:16開
  • 字數:773千字
  • CIP核字號:2017023667
成書過程,修訂過程,出版工作,內容簡介,教材目錄,教學資源,教材特色,作者簡介,

成書過程

修訂過程

該教材對部分章節的內容做了調整,刪除了原第16章的有關JavaApplet的內容;特別修改了原第11章,將資料庫改為MySQL資料庫。該教材由耿祥義、張躍平編著。

出版工作

2017年5月1日,該教材由清華大學出版社出版。
出版社工作人員
責任編輯封面設計責任校對責任印製
魏江江、王冰飛
劉鍵
時翠蘭
李紅英

內容簡介

全書共分15章,分別介紹了Java的基本數據類型,運算符、表達式和語句,類與對象,子類與繼承,接口與實現,內部類與異常類,常用實用類,組件及事件處理,輸入、輸出流,JDBC與MySQL資料庫,Java多執行緒機制,Java網路編程,圖形、圖像與音頻,泛型與集合框架等內容。每章提供的二維碼可觀看相應章節的視頻講解。
第1章介紹Java語言的來歷、地位和重要性,詳細講解了Java平台。第2章講解基本數據類型。第3章介紹Java運算符和控制語句。
第4~7章是該教材的重點內容之一,講述了類與對象、子類與繼承、接口與多態、內部類與異常類等內容,對相關的知識點都結合例子給予了講解,強調了面向抽象和接口的設計思想以及軟體設計的開閉原則。
第8章講述常用的實用類,包括字元串、日期、正則表達式、模式匹配以及數學計算等實用類,講解了怎樣使用StringTokenizer、Scanner、Pattern和Matcher類解析字元串。
第9章介紹了組件的有關知識,把對事件處理的講解分散到具體的組件,只要真正理解掌握了一種組件事件的處理過程,就會掌握其他組件的事件處理。輸入流、輸出流是Java語言中的經典內容,儘管Java提供了二十多種流,但它們的用法、原理卻很類似。
第10章在輸入流、輸出流的講解上突出原理,講解了利用對象流克隆對象的原理。
第11章結合例子講解Java與資料庫的連線過程,主要講解Java怎樣使用JDBC運算元據庫,特別講解了預處理、事務處理和批處理等重要技術。
第12章通過有針對性的例子使讀者掌握多執行緒中的重要概念,並介紹怎樣用多執行緒來解決實際問題。
第13章是關於網路編程的知識,針對套接字,進行了講解。
第14章是有關圖形、圖像和音頻的知識,結合已學知識給出了許多實用的例子。
第15章講述了常用數據結構的Java實現,強調如何有效合理地使用各種數據結構。

教材目錄

1.1Java的地位 1
1.1.1網路地位 2
1.1.2語言地位 2
1.1.3需求地位 2
1.2Java的特點 2
1.2.1簡單 2
1.2.2面向對象 2
1.2.3平台無關 3
1.2.4多執行緒 4
1.2.5動態 4
1.3安裝JDK 5
1.3.1平台簡介 5
1.3.2安裝Java SE平台 5
1.3.3系統環境的設定 7
1.4Java程式的開發步驟 8
1.5簡單的Java應用程式 9
1.5.1源檔案的編寫與保存 9
1.5.2編譯 10
1.5.3運行 11
1.6Java反編譯 13
1.7編程風格 13
1.7.1Allmans風格 13
1.7.2Kernighan風格 14
1.7.3注釋 14
1.8Java之父——James Gosling 15
1.9小結 15
習題1 15
第2章基本數據類型與數組
2.1標識符與關鍵字 17
2.1.1標識符 17
2.1.2Unicode字元集 17
2.1.3關鍵字 18
2.2基本數據類型 18
2.2.1邏輯類型 18
2.2.2整數類型 18
2.2.3字元類型 19
2.2.4浮點類型 20
2.3類型轉換運算 21
2.4輸入、輸出數據 23
2.4.1輸入基本型數據 23
2.4.2輸出基本型數據 23
2.5數組 24
2.5.1聲明數組 24
2.5.2為數組分配元素 25
2.5.3數組元素的使用 26
2.5.4length的使用 27
2.5.5數組的初始化 27
2.5.6數組的引用 27
2.6套用舉例 29
2.7小結 30
習題2 30
第3章運算符、表達式和語句
3.1運算符與表達式 33
3.1.1算術運算符與算術表達式 33
3.1.2自增、自減運算符 33
3.1.3算術混合運算的精度 34
3.1.4關係運算符與關係表達式 34
3.1.5邏輯運算符與邏輯表達式 34
3.1.6賦值運算符與賦值表達式 35
3.1.7位運算符 35
3.1.8instanceof運算符 37
3.1.9運算符綜述 37
3.2語句概述 38
3.3if條件分支語句 38
3.3.1if語句 38
3.3.2if-else語句 39
3.3.3if-else if-else語句 40
3.4switch開關語句 41
3.5循環語句 43
3.5.1for循環語句 43
3.5.2while循環語句 44
3.5.3do-while循環語句 44
3.6break和continue語句 45
3.7for語句與數組 46
3.8套用舉例 47
3.9小結 47
習題3 48
第4章類與對象
4.1程式語言的幾個發展階段 50
4.1.1面向機器語言 50
4.1.2面向過程語言 50
4.1.3面向對象語言 51
4.2類 52
4.2.1類聲明 52
4.2.2類體 53
4.2.3成員變數 53
4.2.4方法 55
4.2.5需要注意的問題 57
4.2.6類的UML圖 57
4.3構造方法與對象的創建 57
4.3.1構造方法 58
4.3.2創建對象 59
4.3.3使用對象 62
4.3.4對象的引用和實體 63
4.4類與程式的基本結構 66
4.5參數傳值 68
4.5.1傳值機制 68
4.5.2基本數據類型參數的傳值 68
4.5.3引用類型參數的傳值 69
4.5.4可變參數 70
4.6對象的組合 71
4.6.1組合與復用 72
4.6.2類的關聯關係和依賴關係的UML圖 76
4.7實例成員與類成員 77
4.7.1實例變數和類變數的聲明 77
4.7.2實例變數和類變數的區別 77
4.7.3實例方法和類方法的定義 79
4.7.4實例方法和類方法的區別 79
4.8方法重載 81
4.8.1方法重載的語法規則 81
4.8.2避免重載出現歧義 83
4.9this關鍵字 84
4.9.1在構造方法中使用this 84
4.9.2在實例方法中使用this 84
4.10包 86
4.10.1包語句 86
4.10.2有包名的類的存儲目錄 86
4.10.3運行有包名的主類 87
4.11import語句 88
4.11.1引入類庫中的類 88
4.11.2引入自定義包中的類 90
4.12訪問許可權 91
4.12.1何謂訪問許可權 91
4.12.2私有變數和私有方法 92
4.12.3共有變數和共有方法 93
4.12.4友好變數和友好方法 93
4.12.5受保護的成員變數和方法 94
4.12.6public類與友好類 95
4.13基本類型的類封裝 95
4.13.1Double和Float類 95
4.13.2Byte、Short、Integer、Long類 95
4.13.3Character類 95
4.14對象數組 96
4.15JRE擴展與jar檔案 97
4.16文檔生成器 98
4.17套用舉例 99
4.18小結 105
習題4 105
第5章子類與繼承
5.1子類與父類 112
5.1.1子類 112
5.1.2類的樹形結構 113
5.2子類的繼承性 113
5.2.1子類和父類在同一包中的繼承性 113
5.2.2子類和父類不在同一包中的繼承性 115
5.2.3繼承關係(Generalization)的UML圖 115
5.2.4protected的進一步說明 115
5.3子類與對象 115
5.3.1子類對象的特點 115
5.3.2關於instanceof運算符 117
5.4成員變數的隱藏和方法重寫 117
5.4.1成員變數的隱藏 117
5.4.2方法重寫 118
5.5super關鍵字 122
5.5.1用super操作被隱藏的成員變數和方法 122
5.5.2使用super調用父類的構造方法 124
5.6final關鍵字 125
5.6.1final類 125
5.6.2final方法 125
5.6.3常量 125
5.7對象的上轉型對象 126
5.8繼承與多態 128
5.9abstract類和abstract方法 129
5.10面向抽象編程 131
5.11開-閉原則 134
5.12套用舉例 135
5.13小結 138
習題5 138
第6章接口與實現
6.1接口 145
6.2實現接口 146
6.3接口的UML圖 148
6.4接口回調 149
6.5理解接口 150
6.6接口與多態 152
6.7接口參數 153
6.8abstract類與接口的比較 154
6.9面向接口編程 155
6.10套用舉例 155
6.11小結 158
習題6 158
第7章內部類與異常類
7.1內部類 162
7.2匿名類 163
7.2.1和子類有關的匿名類 163
7.2.2和接口有關的匿名類 165
7.3異常類 166
7.3.1try-catch語句 167
7.3.2自定義異常類 168
7.4斷言 169
7.5套用舉例 171
7.6小結 172
習題7 172
第8章常用實用類
8.1String類 175
8.1.1構造String對象 175
8.1.2字元串的並置 177
8.1.3String類的常用方法 178
8.1.5對象的字元串表示 183
8.1.6字元串與字元數組、位元組數組 184
8.1.7正則表達式及字元串的替換與分解 186
8.2StringTokenizer類 191
8.3Scanner類 192
8.4StringBuffer類 194
8.4.1StringBuffer對象 194
8.4.2StringBuffer類的常用方法 195
8.5Date類與Calendar類 196
8.5.1Date類 197
8.5.2Calendar類 197
8.6日期的格式化 200
8.6.1format方法 200
8.6.2不同區域的星期格式 202
8.7Math類、BigInteger類和Random類 202
8.7.1Math類 202
8.7.2BigInteger類 203
8.7.3Random類 204
8.8數字格式化 206
8.8.1format方法 206
8.8.2格式化整數 207
8.8.3格式化浮點數 208
8.9Class類與Console類 209
8.9.1Class類 209
8.9.2Console類 211
8.10Pattern類與Matcher類 212
8.11套用舉例 214
8.12小結 215
習題8 216
第9章組件及事件處理
9.1Java Swing概述 221
9.2視窗 222
9.2.1JFrame常用方法 222
9.2.2選單條、選單、選單項 224
9.3常用組件與布局 225
9.3.1常用組件 225
9.3.2常用容器 227
9.3.3常用布局 228
9.4處理事件 233
9.4.1事件處理模式 233
9.4.2ActionEvent事件 234
9.4.3ItemEvent事件 238
9.4.4DocumentEvent事件 241
9.4.5MouseEvent事件 244
9.4.6焦點事件 249
9.4.7鍵盤事件 249
9.4.8視窗事件 252
9.4.9匿名類實例或視窗做監視器 253
9.4.10事件總結 256
9.5使用MVC結構 256
9.6對話框 259
9.6.1訊息對話框 259
9.6.2輸入對話框 260
9.6.3確認對話框 262
9.6.4顏色對話框 264
9.6.5自定義對話框 265
9.7樹組件與表格組件 266
9.7.1樹組件 266
9.7.2表格組件 269
9.8按鈕綁定到鍵盤 271
9.9列印組件 273
9.10發布GUI程式 275
9.11套用舉例 276
9.12小結 279
習題9 279
第10章輸入、輸出流
10.1File類 281
10.1.1檔案的屬性 282
10.1.2目錄 283
10.1.3檔案的創建與刪除 284
10.1.4運行執行檔 284
10.2檔案位元組輸入流 285
10.3檔案位元組輸出流 287
10.4檔案字元輸入、輸出流 289
10.5緩衝流 290
10.6隨機流 292
10.7數組流 295
10.8數據流 297
10.9對象流 299
10.10序列化與對象克隆 301
10.11使用Scanner解析檔案 303
10.12檔案對話框 306
10.13帶進度條的輸入流 308
10.14檔案鎖 309
10.15套用舉例 311
10.16小結 318
習題10 319
第11章JDBC與MySQL資料庫
11.1MySQL資料庫管理系統 322
11.2啟動MySQL資料庫伺服器 323
11.3MySQL客戶端管理工具 325
11.4JDBC 327
11.5連線資料庫 328
11.6查詢操作 330
11.6.1順序查詢 332
11.6.2控制游標 333
11.6.3條件與排序查詢 335
11.7更新、添加與刪除操作 337
11.8使用預處理語句 338
11.8.1預處理語句的優點 338
11.8.2使用通配符 339
11.9通用查詢 340
11.10事務 343
11.10.1事務及處理 343
11.10.2JDBC事務處理步驟 343
11.11連線SQL Server資料庫 345
11.12連線Derby資料庫 346
11.13套用舉例 348
11.13.1設計思路 348
11.13.2具體設計 349
11.13.3用戶程式 356
11.14小結 357
習題11 358
第12章Java多執行緒機制
12.1進程與執行緒 359
12.1.1作業系統與進程 359
12.1.2進程與執行緒 359
12.2Java中的執行緒 360
12.2.1Java的多執行緒機制 360
12.2.2主執行緒(main執行緒) 360
12.2.3執行緒的狀態與生命周期 361
12.2.4執行緒調度與優先權 364
12.3Thread類與執行緒的創建 365
12.3.1使用Thread的子類 365
12.3.2使用Thread類 365
12.3.3目標對象與執行緒的關係 367
12.3.4關於run方法啟動的次數 369
12.4執行緒的常用方法 369
12.5執行緒同步 373
12.6協調同步的執行緒 375
12.7執行緒聯合 377
12.8GUI執行緒 378
12.9計時器執行緒 382
12.10守護執行緒 384
12.11套用舉例 385
12.12小結 388
習題12 389
第13章Java網路編程
13.1URL類 396
13.1.1URL的構造方法 396
13.1.2讀取URL中的資源 397
13.2InetAddress類 398
13.2.1地址的表示 398
13.2.2獲取地址 398
13.3套接字 399
13.3.1套接字概述 399
13.3.2客戶端套接字 400
13.3.3ServerSocket對象與伺服器端套接字 400
13.3.4使用多執行緒技術 403
13.4UDP數據報 407
13.4.1傳送數據包 407
13.4.2接收數據包 408
13.5廣播數據報 411
13.6Java遠程調用 414
13.6.1遠程對象及其代理 414
13.6.2RMI的設計細節 415
13.7套用舉例 418
13.8小結 423
習題13 424
第14章圖形、圖像與音頻
14.1繪製基本圖形 425
14.2變換圖形 427
14.3圖形的布爾運算 429
14.4繪製鐘錶 430
14.5繪製圖像 433
14.6播放音頻 434
14.7套用舉例 437
14.8小結 439
習題14 439
第15章泛型與集合框架
15.1泛型 441
15.1.1泛型類聲明 441
15.1.2使用泛型類聲明對象 442
15.2鍊表 444
15.2.1LinkedList<E>泛型類 444
15.2.2常用方法 445
15.2.3遍歷鍊表 445
15.2.4排序與查找 447
15.2.5洗牌與旋轉 449
15.3堆疊 450
15.4散列映射 451
15.4.1HashMap<K,V>泛型類 451
15.4.2常用方法 452
15.4.3遍歷散列映射 452
15.4.4基於散列映射的查詢 452
15.5樹集 454
15.5.1TreeSet<E>泛型類 454
15.5.2結點的大小關係 454
15.5.3TreeSet類的常用方法 455
15.6樹映射 456
15.7自動裝箱與拆箱 458
15.8套用舉例 459
15.9小結 463
習題15 464
(註:目錄排版順序為從左列至右列

教學資源

  • 配套教材
該教材有配套習題和實驗指導教材——《Java 2實用教程(第5版)實驗指導與習題解答》。
書名書號出版社出版時間作者
《Java 2實用教程(第5版)實驗指導與習題解答》
9787302466871
清華大學出版社
2017.05.01
張躍平、耿祥義
  • 課程資源
該教材提供PPT、Word教案、源碼、視頻、教學大綱、教案、試卷、習題答案。

教材特色

該教材注重可讀性和實用性,配備了例題和習題。該教材採用JDK1.8(JDK8)。該教材針對較難理解的問題,都是從簡單到複雜,逐步深入地引入例子,便於讀者掌握Java面向對象編程思想。
該教材是《Java2實用教程》的第5版,繼續保留原教材的特點——注重教材的可讀性和實用性,許多例題都經過考慮,既能幫助理解知識,又具有啟發性。

作者簡介

耿祥義,1995年中國科學技術大學博士畢業,獲理學博士學位。1997年從中山大學博士後流動站出站,大連交通大學教授。有教授Java語言的經驗。

相關詞條

熱門詞條

聯絡我們