第1章 Java語言概述 1
1.1 計算機語言的發展過程 1
1.2 Java語言的産生 4
1.3 Java語言與C和C++語言的異同 4
1.4 Java語言的特點 4
1.5 Java傢族7
1.6 JDK安裝與配置 9
xml version='1.0' encoding='%SOUP-ENCODING%'1.6.1 下載JDK 9
1.6.2 安裝JDK 10
1.6.3 認識JDK 11
1.6.4 設置Path與Classpath 12
1.6.5 第一個Java程序 13
1.7 Java集成開發環境(IDE)介紹 16
1.7.1 IDE的選擇 16
1.7.2 Eclipse介紹 16
1.8 小結 19
1.9 習題 20
第2章 Java程序概述 21
2.1 Java詞法結構 21
2.1.1 標識符 21
2.1.2 關鍵字 22
2.1.3 運算符 22
2.1.4 分隔符 24
2.1.5 文字常量 24
2.1.6 注釋符 24
2.2 Java程序組成結構 24
2.2.1 Java應用程序組成24
2.2.2 Java編譯單元組成24
2.2.3 類組成 27
2.2.4 接口組成 27
2.2.5 方法 28
2.2.6 語句 28
2.2.7 注釋 29
2.3 Java程序設計 30
2.3.1 麵嚮對象程序設計概述 30
2.3.2 類的設計 32
2.3.3 算法的設計 32
2.4 小結 40
2.5 習題 40
第3章 數據類型 41
3.1 Java數據類型概述 41
3.2 常量與變量概述 42
3.2.1 字麵常量和符號常量 42
3.2.2 變量 43
3.3 整數類型44
3.4 實數類型46
3.5 布爾型 47
3.6 字符型 48
3.7 字符串 50
3.8 類型轉換51
3.8.1 錶達式中的自動類型轉換 51
3.8.2 強製類型轉換 52
3.8.3 賦值語句中的自動類型轉換 53
3.9 數組 53
3.9.1 一維數組 54
3.9.2 多維數組 57
3.10 小結 61
3.11 習題 61
第4章 運算符 62
4.1 運算符與錶達式概述 62
4.2 算術運算符 63
4.2.1 雙目運算符 63
4.2.2 單目運算符 65
4.3 關係運算符 66
4.4 布爾邏輯運算符 68
4.4.1 “與”運算 68
4.4.2 “或”運算 69
4.4.3 “非”運算 70
4.5 位運算符71
4.5.1 整數的二進製錶示形式 72
4.5.2 位邏輯運算 72
4.5.3 移位運算 76
4.5.4 byte型和short型的位運算 78
4.5.5 位運算附加功能 79
4.6 賦值運算符 79
4.7 條件運算符 80
4.8 其他運算符 81
4.9 運算符優先級 81
4.10 小結 82
4.11 習題 82
第5章 流程控製語句 83
5.1 程序控製結構概述 83
5.2 條件選擇語句 84
5.2.1 if語句 84
5.2.2 switch語句 89
5.3 循環語句93
5.3.1 for語句 93
5.3.2 while語句 96
5.3.3 do-while語句 97
5.3.4 循環嵌套 97
5.4 轉嚮語句98
5.4.1 break語句 98
5.4.2 continue語句100
5.4.3 標簽語句 101
5.5 返迴語句105
5.6 小結 106
5.7 習題 107
第6章 麵嚮對象基礎 108
6.1 概述 108
6.1.1 麵嚮對象基本概念108
6.1.2 類的特性 110
6.1.3 類之間的關係 112
6.1.4 對象的特性 114
6.2 UML基礎 115
6.2.1 概述 115
6.2.2 用例模型 116
6.2.3 靜態結構圖 118
6.2.4 行為圖 122
6.2.5 交互圖 125
6.2.6 實現圖 126
6.3 麵嚮對象係統實例 127
6.3.1 用例設計 127
6.3.2 係統模塊設計 130
6.3.3 靜態模型設計 131
6.3.4 動態模型設計 134
6.4 小結 136
6.5 習題 137
第7章 麵嚮對象Java實現 138
7.1 類 138
7.1.1 類的定義 138
7.1.2 成員域定義 139
7.1.3 方法的定義 142
7.1.4 方法重載 146
7.1.5 構造方法 147
7.1.6 finalize方法 148
7.2 對象 149
7.2.1 創建對象 149
7.2.2 對象的交互 152
7.2.3 垃圾收集 158
7.3 包 158
7.3.1 包的定義 158
7.3.2 包中編譯單元的導入 159
7.3.3 類中靜態成員導入160
7.4 繼承 160
7.4.1 類的繼承 160
7.4.2 super關鍵字162
7.4.3 覆蓋與多態 164
7.4.4 抽象類與抽象方法167
7.4.5 final修飾符 168
7.5 接口 168
7.5.1 接口定義 168
7.5.2 接口實現 169
7.5.3 接口應用與多態 171
7.6 枚舉 176
7.6.1 枚舉定義 177
7.6.2 枚舉類型應用 179
7.6.3 接口實現 181
7.7 對象類型轉換 181
7.7.1 對象類型的隱式轉換 181
7.7.2 對象類型的強製轉換 182
7.7.3 對象類型識彆 183
7.8 嵌套類 184
7.8.1 靜態嵌套類 184
7.8.2 實例嵌套類 185
7.8.3 局部內部類 187
7.8.4 匿名類 189
7.8.5 接口中的嵌套類 191
7.8.6 枚舉中的嵌套類 191
7.8.7 類中的嵌套枚舉 192
7.9 類關聯 193
7.10 小結 194
7.11 習題 195
第8章 Java類庫介紹 196
8.1 概述 196
8.2 Java字符串處理 197
8.2.1 字符串操作 197
8.2.2 利用valueOf()方法實現數據轉換 200
8.2.3 StringBuffer 200
8.3 java.lang包 202
8.3.1 類型包裝器 202
8.3.2 自動裝箱和拆箱 202
8.3.3 Process與Runtime204
8.3.4 System 207
8.3.5 Object及clone()和Cloneable接口 210
8.3.6 Class與ClassLoader 211
8.3.7 Package213
8.4 java.util包中的集閤類 214
8.4.1 類集概述 214
8.4.2 類集接口 214
8.4.3 類集類 216
8.4.4 通過迭代函數訪問類集 219
8.4.5 映射接口 220
8.4.6 映射類 222
8.4.7 數組Arrays 223
8.4.8 JDK1.4之前的類和接口 224
8.5 java.util包中的其他類 232
8.5.1 StringTokenizer 232
8.5.2 Timer和TimerTask 233
8.6 小結 234
8.7 習題 235
第9章 異常和斷言 236
9.1 異常處理概述 236
9.2 異常處理方法 237
9.2.1 未被捕獲的異常 237
9.2.2 try塊—捕獲異常 238
9.2.3 catch塊—處理異常 239
9.2.4 finally塊—異常清理 239
9.2.5 使用多重catch語句 241
9.2.6 嵌套try語句 242
9.2.7 throw語句—産生異常 243
9.2.8 throws子句—定義方法拋齣
異常244
9.3 常用的Java異常類 245
9.4 自定義異常類 246
9.5 斷言 247
9.5.1 斷言的語法和語義248
9.5.2 斷言程序的編譯 248
9.5.3 斷言程序的運行 248
9.5.4 斷言程序的使用 249
9.6 小結 250
9.7 習題 250
第10章 多綫程 251
10.1 概述 251
10.1.1 綫程基礎 251
10.1.2 綫程的狀態252
10.2 創建綫程 253
10.2.1 Thread類和Runnable接口 253
10.2.2 實現Runnable接口創建綫程 254
10.2.3 擴展Thread類創建綫程 256
10.3 實現多綫程 257
10.3.1 主綫程 257
10.3.2 多綫程的創建 258
10.3.3 使用isAlive()和join()方法 260
10.3.4 綫程的暫停和恢復 262
10.3.5 綫程的優先級 266
10.4 綫程的同步和死鎖 267
10.4.1 綫程的同步268
10.4.2 綫程的死鎖269
10.5 小結 270
10.6 習題 270
第11章 泛型 271
11.1 泛型簡介 271
11.2 泛型類 272
11.2.1 泛型類聲明272
11.2.2 泛型類體定義 276
11.2.3 泛型的實例化 277
11.2.4 泛型的原生類型 278
11.2.5 泛型實例的運行時類型 279
11.2.6 通配符 281
11.2.7 泛型和繼承284
11.3 泛型接口 286
11.3.1 泛型接口定義 286
11.3.2 泛型接口實現 287
11.4 泛型和數組 288
11.5 泛化方法 289
11.6 小結 291
11.7 習題 291
第12章 Java虛擬機 292
12.1 Java虛擬機概述 292
12.2 Java虛擬機的生命周期 293
12.3 Java虛擬機數據類型 293
12.4 Java虛擬機指令係統 294
12.4.1 裝載和存儲指令 295
12.4.2 運算指令 296
12.4.3 類型轉換指令 296
12.4.4 對象創建和操縱 297
12.4.5 操作數棧管理指令 297
12.4.6 控製轉移指令 297
12.4.7 方法調用返迴指令 297
12.4.8 拋齣和異常處理指令 298
12.4.9 finally實現指令 298
12.4.10 同步指令 298
12.5 Java虛擬機體係結構 298
12.5.1 類加載器子係統 299
12.5.2 運行時數據區 301
12.5.3 執行引擎 310
12.5.4 本地方法接口 313
12.6 小結 313
12.7 習題 314
第13章 Java流與文件操作 315
13.1 概述 315
13.2 字節流 315
13.2.1 基本輸入/輸齣流 315
13.2.2 文件輸入/輸齣流 317
13.2.3 緩存輸入/輸齣流 319
13.2.4 字節數組輸入/輸齣流319
13.2.5 打印流 321
13.2.6 過濾輸入/輸齣流 321
13.3 字符流 324
13.3.1 Reader和Writer 325
13.3.2 緩存Reader和緩存Writer 325
13.3.3 InputStreamReader和
OutputStreamWriter 327
13.3.4 FileReader和FileWriter329
13.3.5 PrintWriter 329
13.4 File類 330
13.5 文件的隨機輸入/輸齣 332
13.6 對象序列化 334
13.7 小結 336
13.8 習題 337
第14章 Java GUI編程 338
14.1 GUI編程概述 338
14.1.1 AWT組件 338
14.1.2 Swing組件 340
14.1.3 Java圖形界麵設計一般過程341
14.2 常用容器 341
14.2.1 框架 341
14.2.2 麵闆 343
14.2.3 小程序 344
14.2.4 Swing容器 344
14.3 常用GUI組件介紹 345
14.3.1 標簽、文本框、密碼框和按鈕 345
14.3.2 單選按鈕、復選框、列錶框和
組閤框 348
14.3.3 文本域、菜單和工具欄 351
14.3.4 其他AWT組件 355
14.4 布局管理 356
14.5 事件處理 363
14.5.1 Java事件模型 363
14.5.2 事件類型 364
14.5.3 AWT事件及其相應的監聽器
接口365
14.5.4 Swing事件及其相應的監聽器
接口366
14.5.5 動作事件示例 366
14.5.6 鍵盤事件示例 369
14.5.7 鼠標事件示例 370
14.6 高級GUI組件介紹 371
14.6.1 對話框 371
14.6.2 錶格 373
14.6.3 樹 378
14.7 小結 379
14.8 習題 380
第15章 Java小應用程序Applet 381
15.1 概述 381
15.2 Applet基本結構 381
15.3 Applet應用示例 382
15.3.1 第一個Applet示例 382
15.3.2 第二個Applet示例 384
15.4 Applet安全性 386
15.5 Applet與Application 388
15.6 小結 388
15.7 習題 388
第16章 網絡編程389
16.1 概述 389
16.1.1 C/S與B/S 390
16.1.2 IP地址和域名係統 390
16.2 使用URL方式進行網絡連接 391
16.3 基於連接的流式套接字通信 394
16.3.1 概述 394
16.3.2 Socket類和ServerSocket類 394
16.3.3 基於Socket的C/S程序 395
16.4 基於無連接的數據報通信 399
16.5 小結 403
16.6 習題 403
第17章 數據庫編程 404
17.1 JDBC概述 404
17.2 數據庫基本操作 404
17.2.1 關係數據庫術語 404
17.2.2 SQL基礎知識 405
17.2.3 創建數據庫和數據錶 405
17.2.4 數據更新 406
17.2.5 數據查詢 407
17.3 Java數據庫連接 409
17.4 Java數據庫基本操作 410
17.4.1 注冊數據庫驅動程序 410
17.4.2 獲得數據庫連接 410
17.4.3 發送和執行SQL語句 411
17.5 預處理與存儲過程 416
17.5.1 預處理與存儲過程 416
17.5.2 創建存儲過程 416
17.5.3 執行存儲過程 417
17.6 數據庫元數據操作 419
17.7 小結 421
17.8 習題 421
· · · · · · (
收起)