目 錄
第1篇 基 礎 篇
第1章 初識Java 3
視頻講解:20分鍾
1.1 Java語言概述 4
1.1.1 Java語言的曆史 4
1.1.2 Java語言的現狀 4
1.1.3 Java語言的麵嚮對象特性 4
1.2 JDK的下載和安裝 6
1.2.1 JDK下載 6
1.2.2 JDK安裝 7
1.2.3 配置JDK 9
1.2.4 測試開發環境 11
1.3 第一個Java程序 11
1.4 本章小結 14
第2章 熟悉Eclipse開發工具 15
視頻講解:22分鍾
2.1 熟悉Eclipse 16
2.1.1 Eclipse簡介 16
2.1.2 Eclipse的下載與安裝 16
2.1.3 Eclipse漢化 17
2.1.4 Eclipse工作颱 21
2.1.5 透視圖與視圖 22
2.1.6 菜單欄 23
2.1.7 工具欄 27
2.1.8 “包資源管理器”視圖 28
2.1.9 “控製颱”視圖 28
2.2 使用Eclipse 28
2.2.1 創建Java項目 29
2.2.2 創建Java類文件 29
2.2.3 使用編輯器編寫程序代碼 30
2.2.4 運行Java程序 32
2.3 程序調試 32
2.4 本章小結 33
第3章 Java語言基礎 35
視頻講解:58分鍾
3.1 Java程序的基本結構 36
3.2 標識符和關鍵字 37
3.2.1 標識符 37
3.2.2 關鍵字 38
3.3 基本數據類型 38
3.3.1 整數類型 39
3.3.2 浮點類型 40
3.3.3 字符類型 42
3.3.4 布爾類型 43
3.4 變量與常量 43
3.4.1 聲明變量 44
3.4.2 聲明常量 45
3.4.3 變量的有效範圍 45
3.5 運算符 47
3.5.1 賦值運算符 47
3.5.2 算術運算符 48
3.5.3 自增和自減運算符 49
3.5.4 比較運算符 49
3.5.5 邏輯運算符 50
3.5.6 位運算符 51
3.5.7 三元運算符 53
3.5.8 運算符優先級 54
3.5.9 範例1:不用其他變量實現兩變量互換 55
3.5.10 範例2:判斷數字的奇偶性 56
3.6 類型轉換 56
3.6.1 自動類型轉換 56
3.6.2 強製類型轉換 57
3.6.3 範例3:類型轉換實戰 58
3.7 代碼注釋和編碼規範 59
3.7.1 代碼注釋 59
3.7.2 編碼規範 60
3.8 經典範例 61
3.8.1 經典範例1:判斷某一年是否是閏年 61
3.8.2 經典範例2:求球形的體積 61
3.9 本章小結 62
3.10 實戰練習 62
第4章 流程控製 63
視頻講解:31分鍾
4.1 復閤語句 64
4.2 條件語句 65
4.2.1 if條件語句 65
4.2.2 switch多分支語句 69
4.2.3 範例1:驗證登錄信息的閤法性 71
4.2.4 範例2:為新員工分配部門 71
4.3 循環語句 73
4.3.1 while循環語句 73
4.3.2 do…while循環語句 74
4.3.3 for循環語句 75
4.3.4 範例3:使用while循環遍曆數組 77
4.3.5 範例4:使用for循環輸齣九九乘法錶 77
4.4 跳轉語句 78
4.4.1 break語句 78
4.4.2 continue語句 79
4.4.3 return語句 80
4.4.4 範例5:終止循環體 80
4.4.5 範例6:循環體的過濾器 81
4.5 經典範例 82
4.5.1 經典範例1:使用for循環輸齣空心的
菱形 82
4.5.2 經典範例2:使用for循環輸齣楊輝三角 84
4.6 本章小結 84
4.7 實戰練習 85
第5章 數組 87
視頻講解:31分鍾
5.1 數組概述 88
5.2 一維數組 88
5.2.1 創建一維數組 89
5.2.2 初始化一維數組 90
5.2.3 範例1:求一維數組各元素的和 90
5.2.4 範例2:獲取一維數組的最小值 91
5.3 多維數組 92
5.3.1 二維數組 92
5.3.2 三維數組 94
5.3.3 範例3:對矩陣進行轉置運算 95
5.3.4 範例4:求方陣的跡 96
5.4 數組的基本操作 96
5.4.1 遍曆數組 97
5.4.2 填充替換數組元素 98
5.4.3 對數組進行排序 99
5.4.4 復製數組 100
5.4.5 範例5:對比一維、二維數組所占內存 102
5.4.6 範例6:使用直接插入排序法排序 103
5.5 經典範例 104
5.5.1 經典範例1:使用冒泡排序法排序 104
5.5.2 經典範例2:輸齣九宮格 105
5.6 本章小結 105
5.7 實戰練習 106
第6章 字符串 107
視頻講解:48分鍾
6.1 創建字符串 108
6.2 字符串操作 108
6.2.1 字符串連接 108
6.2.2 獲取字符串信息 110
6.2.3 去除字符串中的空格 112
6.2.4 字符串替換 114
6.2.5 判斷字符串 115
6.2.6 字母大小寫轉換 117
6.2.7 字符串分割 118
6.2.8 範例1:根據指定分割符把字符串分行 119
6.2.9 範例2:判斷字符串是否是數字格式 120
6.3 格式化字符串 121
6.3.1 格式化方法 121
6.3.2 日期格式化 122
6.3.3 時間格式化 123
6.3.4 日期時間組閤格式化 124
6.3.5 常規類型格式化 125
6.3.6 範例3:將金額格式化成大寫 126
6.3.7 範例4:將數字格式化成貨幣格式 128
6.4 正則錶達式 128
6.4.1 判斷是否符閤正則錶達式的方法 128
6.4.2 正則錶達式的元字符 129
6.4.3 正則錶達式的限定符 130
6.4.4 方括號中元字符的含義 131
6.4.5 範例5:驗證IP地址的閤法性 132
6.4.6 範例6:計算文章中漢字的個數 133
6.5 字符串生成器 134
6.5.1 StringBuilder類 134
6.5.2 StringBuilder類的常用方法 135
6.5.3 範例7:將漢字和字母
轉換成Unicode碼 138
6.5.4 範例8:去掉字符串中重復的字符 138
6.6 經典範例 139
6.6.1 經典範例1:實現字符串加密 139
6.6.2 經典範例2:驗證字符串是否迴文 140
6.7 本章小結 141
6.8 實戰練習 141
第7章 類和對象 143
視頻講解:46分鍾
7.1 麵嚮對象概述 144
7.1.1 什麼是對象 144
7.1.2 什麼是類 145
7.1.3 麵嚮對象的特點 146
7.2 類 148
7.2.1 類的構造方法 148
7.2.2 類的主方法 149
7.2.3 成員變量 150
7.2.4 成員方法 151
7.2.5 局部變量 152
7.2.6 局部變量的有效範圍 152
7.2.7 靜態變量、常量和方法 153
7.2.8 權限修飾符 155
7.2.9 this關鍵字 156
7.2.10 範例1:自定義圖書類 157
7.2.11 範例2:溫度單位轉換工具 158
7.3 對象 158
7.3.1 對象的創建 159
7.3.2 訪問對象的屬性和行為 160
7.3.3 對象的引用 162
7.3.4 對象的比較 162
7.3.5 對象的銷毀 163
7.3.6 範例3:統計圖書銷量 164
7.3.7 範例4:重新計算對象的哈希碼 165
7.4 經典範例 166
7.4.1 經典範例1:漢諾塔問題求解 166
7.4.2 經典範例2:單例模式的應用 167
7.5 本章小結 168
7.6 實戰練習 168
第2篇 技 術 篇
第8章 接口、繼承與多態 171
視頻講解:18分鍾
8.1 接口的使用 172
8.1.1 接口的定義 172
8.1.2 接口的實現 172
8.1.3 範例1:圖片的不同格式保存 173
8.1.4 範例2:為汽車增加GPS定位功能 174
8.2 類的繼承 175
8.2.1 繼承的實現 175
8.2.2 繼承中的重寫 176
8.2.3 使用super關鍵字 177
8.2.4 範例3:經理與員工的差異 179
8.2.5 範例4:重寫父類中的方法 180
8.3 多態 181
8.3.1 什麼是多態 181
8.3.2 範例5:計算幾何圖形的麵積 183
8.3.3 範例6:簡單的汽車銷售商場 184
8.4 經典範例 185
8.4.1 經典範例1:使用Comparable接口
自定義排序 185
8.4.2 經典範例2:動態設置類的私有域 187
8.5 本章小結 188
8.6 實戰練習 188
第9章 類的高級特性 189
視頻講解:34分鍾
9.1 抽象類 190
9.2 內部類 192
9.2.1 成員內部類 192
9.2.2 局部內部類 195
9.2.3 匿名內部類 195
9.2.4 靜態內部類 197
9.2.5 內部類的繼承 198
9.2.6 範例1:局部內部類設置鬧鍾 198
9.2.7 範例2:靜態內部類求極值 199
9.3 Class類與Java反射 200
9.3.1 訪問構造方法 201
9.3.2 訪問成員變量 204
9.3.3 訪問方法 206
9.3.4 範例3:運用反射查看類的成員 209
9.3.5 範例4:動態調用類中方法 210
9.4 經典範例 211
9.4.1 經典範例1:利用反射重寫
toString()方法 211
9.4.2 經典範例2:普通內部類的簡單應用 212
9.5 本章小結 213
9.6 實戰練習 213
第10章 Java集閤類 215
視頻講解:45分鍾
10.1 集閤類概述 216
10.2 集閤類接口的常用方法 216
10.2.1 List接口的常用方法 216
10.2.2 Set接口的常用方法 218
10.2.3 Map接口的常用方法 219
10.2.4 範例1:用List集閤傳遞學生信息 220
10.2.5 範例2:Map集閤二級聯動 222
10.3 集閤類接口的實現類 223
10.3.1 List接口的實現類 223
10.3.2 Set接口的實現類 224
10.3.3 Map接口的實現類 226
10.3.4 範例3:for循環遍曆ArrayList 227
10.3.5 範例4:用動態數組保存學生姓名 228
10.4 迭代器 229
10.4.1 迭代器的創建和使用 229
10.4.2 範例5:Iterator遍曆ArrayList 230
10.4.3 範例6:ListIterator遍曆ArrayList 231
10.5 經典範例 232
10.5.1 經典範例1:製作電子詞典 232
10.5.2 經典範例2:製作手機電話本 234
10.6 本章小結 235
10.7 實戰練習 235
第11章 異常處理 237
視頻講解:49分鍾
11.1 異常概述 238
11.2 異常的分類 238
11.2.1 可控式異常 238
11.2.2 運行時異常 240
11.2.3 範例1:算術異常 241
11.2.4 範例2:數組下標越界異常 242
11.3 獲取異常信息 243
11.4 處理異常 244
11.4.1 使用try…catch處理異常 244
11.4.2 使用try…catch…finally處理異常 245
11.4.3 使用try…finally處理異常 246
11.5 拋齣異常 248
11.5.1 使用throws聲明拋齣異常 248
11.5.2 使用throw語句拋齣異常 250
11.5.3 範例3:方法中拋齣異常 251
11.5.4 範例4:方法上拋齣異常 251
11.6 自定義異常 252
11.6.1 創建自定義異常類 252
11.6.2 使用自定義異常類 253
11.7 異常的使用原則 254
11.8 經典範例 254
11.8.1 經典範例1:捕獲單個異常 254
11.8.2 經典範例2:數據庫操作異常 255
11.9 本章小結 256
11.10 實戰練習 256
第12章 輸入/輸齣 257
視頻講解:30分鍾
12.1 流概述 258
12.2 輸入/輸齣流 258
12.2.1 輸入流 258
12.2.2 輸齣流 260
12.2.3 範例1:顯示指定類型的文件 261
12.2.4 範例2:查找替換文本文件內容 262
12.3 File類 263
12.3.1 文件的創建與刪除 263
12.3.2 獲取文件信息 264
12.3.3 範例3:文件批量重命名 265
12.3.4 範例4:快速批量移動文件 266
12.4 文件輸入/輸齣流 267
12.4.1 FileInputStream與FileOutputStream類 267
12.4.2 FileReader類和FileWriter類 268
12.4.3 範例5:窗體動態加載磁盤文件 270
12.4.4 範例6:刪除文件夾中所有文件 272
12.5 帶緩存的輸入/輸齣流 272
12.5.1 BufferedInputStream類與
BufferedOutputStream類 272
12.5.2 BufferedReader類與BufferedWriter類 273
12.5.3 範例7:讀取屬性文件單個屬性值 275
12.5.4 範例8:閤並多個TXT文件 276
12.6 數據輸入/輸齣流 277
12.7 ZIP壓縮輸入/輸齣流 278
12.7.1 壓縮文件 278
12.7.2 解壓縮ZIP文件 280
12.7.3 範例9:壓縮包解壓到指定文件夾 281
12.7.4 範例10:壓縮所有子文件夾 283
12.8 經典範例 284
12.8.1 經典範例1:簡單的投票軟件 284
12.8.2 經典範例2:電子通訊錄 284
12.9 本章小結 285
12.10 實戰練習 286
第13章 Swing程序設計 287
視頻講解:51分鍾
13.1 Swing概述 288
13.2 Swing常用窗體 288
13.2.1 JFrame框架窗體 288
13.2.2 JDialog窗體 290
13.2.3 範例1:設置窗體大小 291
13.2.4 範例2:禁止改變窗體的大小 292
13.3 標簽組件與圖標 292
13.3.1 標簽的使用 292
13.3.2 圖標的使用 293
13.3.3 範例3:為圖片添加說明 295
13.4 常用布局管理器 296
13.4.1 絕對布局 297
13.4.2 流布局管理器 297
13.4.3 邊界布局管理器 299
13.4.4 網格布局管理器 300
13.5 常用麵闆 301
13.5.1 JPanel麵闆 301
13.5.2 JScrollPane麵闆 302
13.6 按鈕組件 303
13.6.1 提交按鈕組件 303
13.6.2 單選按鈕組件 304
13.6.3 復選框組件 305
13.7 列錶組件 306
13.7.1 下拉列錶框組件 306
13.7.2 列錶框組件 308
13.8 文本組件 310
13.8.1 文本框組件 310
13.8.2 密碼框組件 311
13.8.3 文本域組件 311
13.8.4 範例4:給文本域設置背景圖片 312
13.8.5 範例5:給文本區設置背景圖片 313
13.9 經典範例 313
13.9.1 經典範例1:設置窗體標題欄圖標 313
13.9.2 經典範例2:隨機更換窗體背景 314
13.10 本章小結 315
13.11 實戰練習 315
第3篇 高 級 篇
第14章 高級事件處理 319
視頻講解:30分鍾
14.1 鍵盤事件 320
14.2 鼠標事件 322
14.3 窗體事件 324
14.3.1 捕獲窗體焦點變化事件 324
14.3.2 捕獲窗體狀態變化事件 325
14.3.3 捕獲其他窗體事件 326
14.4 選項事件 328
14.5 錶格模型事件 329
14.6 經典範例 332
14.6.1 經典範例1:模擬相機拍攝 332
14.6.2 經典範例2:打地鼠遊戲 333
14.7 本章小結 335
14.8 實戰練習 335
第15章 多綫程 337
視頻講解:41分鍾
15.1 綫程簡介 338
15.2 實現綫程的兩種方式 338
15.2.1 繼承Thread類 339
15.2.2 實現Runnable接口 340
15.2.3 範例1:查看綫程的運行狀態 342
15.2.4 範例2:查看JVM中的綫程名 344
15.3 綫程的生命周期 345
15.4 操作綫程的方法 346
15.4.1 綫程的休眠 347
15.4.2 綫程的加入 348
15.4.3 綫程的中斷 350
15.4.4 綫程的禮讓 351
15.4.5 範例3:查看和修改綫程優先級 351
15.4.6 範例4:休眠當前綫程 353
15.5 綫程的優先級 354
15.6 綫程同步 356
15.6.1 綫程安全 356
15.6.2 綫程同步機製 357
15.7 綫程間的通信 359
15.8 經典範例 361
15.8.1 經典範例1:查看JVM中的綫程名 361
15.8.2 經典範例2:查看和修改綫程名稱 362
15.9 本章小結 364
15.10 實戰練習 364
第16章 網絡通信 365
視頻講解:33分鍾
16.1 網絡程序設計基礎 366
16.1.1 局域網與因特網 366
16.1.2 網絡協議 366
16.1.3 端口和套接字 367
16.1.4 範例1:獲得內網的所有IP地址 368
16.1.5 範例2:解析網頁中的內容 369
16.2 TCP程序設計基礎 370
16.2.1 InetAddress類 371
16.2.2 ServerSocket類 372
16.2.3 TCP網絡程序 373
16.2.4 範例3:設置等待連接的超時時間 376
16.2.5 範例4:獲得Socket信息 377
16.3 UDP程序設計基礎 378
16.3.1 DatagramPacket類 379
16.3.2 DatagramSocket類 379
16.3.3 UDP網絡程序 379
16.4 經典範例 383
16.4.1 經典範例1:聊天室服務器端 383
16.4.2 經典範例2:聊天室客戶端 385
16.5 本章小結 387
16.6 實戰練習 387
第17章 JDBC操作數據庫 389
視頻講解:1小時25分鍾
17.1 JDBC概述 390
17.1.1 數據庫概述 390
17.1.2 JDBC技術 391
17.2 JDBC的常用類和接口 391
17.2.1 DriverManager類 391
17.2.2 Connection接口 392
17.2.3 Statement接口 393
17.2.4 PreparedStatement接口 393
17.2.5 ResultSet接口 393
17.3 通過JDBC操作數據庫 394
17.3.1 加載數據庫驅動 394
17.3.2 建立連接 395
17.3.3 嚮數據庫添加數據 396
17.3.4 獲得查詢結果集 397
17.3.5 更改數據庫中的數據 398
17.3.6 刪除數據庫中的數據 399
17.3.7 模糊查詢 400
17.3.8 範例1:將復選框內容存到數據庫 401
17.3.9 範例2:查詢三年二班的學生信息 403
17.4 經典範例 404
17.4.1 經典範例1:管理學生信息 404
17.4.2 經典範例2:權限管理 410
17.5 本章小結 415
17.6 實戰練習 415
第18章 Swing高級組件 417
視頻講解:48分鍾
18.1 利用JTable類直接創建錶格 418
18.1.1 創建錶格 418
18.1.2 定製錶格 420
18.1.3 操縱錶格 423
18.1.4 範例1:列錶元素與提示信息 425
18.1.5 範例2:監聽列錶單擊事件 426
18.2 錶格模型與錶格 427
18.2.1 利用錶格模型創建錶格 427
18.2.2 維護錶格模型 429
18.2.3 範例3:實現自動排序列錶 431
18.2.4 範例4:可以預覽字體的列錶 432
18.3 提供行標題欄的錶格 433
18.3.1 提供行標題欄的錶格 433
18.3.2 範例5:提供行標題欄的錶格 433
18.4 Swing樹組件 437
18.4.1 簡單的樹 437
18.4.2 處理選中節點事件 438
18.4.3 遍曆樹節點 440
18.4.4 定製樹 442
18.4.5 維護樹模型 444
18.4.6 處理展開節點事件 446
18.4.7 範例6:為樹節點增加提示信息 448
18.4.8 範例7:雙擊編輯樹節點功能 449
18.5 經典範例 450
18.5.1 經典範例1:編寫中國省市信息樹 450
18.5.2 經典範例2:監聽節點的選擇事件 451
18.6 本章小結 452
18.7 實戰練習 452
第19章 高級布局管理器 453
視頻講解:39分鍾
19.1 箱式布局管理器 454
19.2 卡片布局管理器 456
19.3 網格組布局管理器 458
19.4 彈簧布局管理器 464
19.4.1 使用彈簧布局管理器 464
19.4.2 使用彈簧和支柱 467
19.4.3 利用彈簧控製組件大小 468
19.5 經典範例 469
19.5.1 經典範例1:製作圓形布局管理器 469
19.5.2 經典範例2:製作階梯布局管理器 470
19.6 本章小結 471
19.7 實戰練習 471
第20章 AWT繪圖技術 473
視頻講解:33分鍾
20.1 繪製圖形 474
20.1.1 Graphics 474
20.1.2 Graphics2D 476
20.1.3 範例1:繪製指定角度的填充扇形 478
20.1.4 範例2:繪製多邊形 478
20.2 繪圖顔色與筆畫屬性 479
20.2.1 設置顔色 479
20.2.2 筆畫屬性 481
20.2.3 範例3:為圖形填充漸變色 482
20.2.4 範例4:設置筆畫的粗細 482
20.3 繪製文本 483
20.3.1 設置字體 483
20.3.2 顯示文字 484
20.3.3 範例5:設置文本的字體 485
20.3.4 範例6:設置文本的圖形和顔色 486
20.4 圖片處理 487
20.4.1 繪製圖片 487
20.4.2 放大與縮小 488
20.4.3 圖片翻轉 490
20.4.4 圖片鏇轉 492
20.4.5 圖片傾斜 493
20.4.6 範例7:圖形的交運算 495
20.4.7 範例8:圖形的異或運算 495
20.5 經典範例 496
20.5.1 經典範例1:繪製花瓣 496
20.5.2 經典範例2:繪製藝術圖案 497
20.6 本章小結 498
20.7 實戰練習 499
第4篇 項 目 篇
第21章 酒店管理係統 503
視頻講解:1小時21分鍾
21.1 概述 504
21.2 係統分析 504
21.3 係統設計 504
21.3.1 係統目標 504
21.3.2 係統功能結構 505
21.3.3 係統預覽 505
21.3.4 業務流程圖 506
21.3.5 文件夾結構設計 507
21.4 數據庫設計 508
21.4.1 數據庫分析 508
21.4.2 數據庫概念設計 508
21.4.3 數據庫邏輯結構設計 509
21.4.4 視圖設計 509
21.5 公共模塊設計 510
21.5.1 編寫數據庫連接類 510
21.5.2 封裝常用的操作數據庫的方法 511
21.5.3 自定義錶格組件 512
21.5.4 編寫利用正則錶達式驗證數據
閤法性的方法 513
21.6 主窗體設計 514
21.7 用戶登錄窗口設計 516
21.8 開颱簽單工作區設計 521
21.8.1 開颱簽單工作區功能概述 521
21.8.2 開颱簽單工作區技術分析 522
21.8.3 開颱簽單工作區實現過程 522
21.8.4 單元測試 527
21.9 自動結賬工作區設計 528
21.9.1 自動結賬工作區功能概述 528
21.9.2 自動結賬工作區技術分析 528
21.9.3 自動結賬工作區實現過程 529
21.10 結賬報錶工作區設計 530
21.10.1 結賬報錶工作區功能概述 530
21.10.2 結賬報錶工作區技術分析 531
21.10.3 結賬報錶工作區實現過程 531
21.10.4 單元測試 535
21.11 後颱管理工作區設計 536
21.11.1 後颱管理工作區功能概述 536
21.11.2 後颱管理工作區技術分析 537
21.11.3 後颱管理工作區實現過程 537
21.11.4 單元測試 544
21.12 開發技巧與難點分析 544
21.13 使用Visio逆嚮生成
數據庫E-R圖 546
21.14 本章小結 548
· · · · · · (
收起)