第1章 Java概述 1
1.1 Java的發展 1
1.1.1 Java的發展史 1
1.1.2 Java與C、C++和C#的
關係 2
1.2 Java的特點 3
1.3 麵嚮對象程序設計 4
1.3.1 封裝 5
1.3.2 繼承 5
1.3.3 多態性 6
1.3.4 Java的開發工具 6
1.4 一個簡單的Java程序 7
1.4.1 編寫Java程序 7
1.4.2 編譯和執行Java程序 8
1.4.3 Java程序的基本要素 9
1.5 實驗指導 12
1.6 思考與練習 13
第2章 數據類型與運算符 15
2.1 常量、變量和錶達式 15
2.1.1 常量 15
2.1.2 變量 16
2.2 數據類型 18
2.2.1 整數類型 19
2.2.2 浮點類型 20
2.2.3 字符類型 21
2.2.4 布爾類型 22
2.2.5 類型之間的轉換 22
2.2.6 轉義序列 23
2.3 運算符和錶達式 24
2.3.1 算術運算符 25
2.3.2 關係運算符和邏輯運算符 28
2.3.3 位運算符 29
2.3.4 賦值運算符和條件運算符 30
2.3.5 擴展運算符 31
2.3.6 其他運算符 32
2.3.7 運算符優先級 33
2.4 實驗指導 33
2.5 思考與練習 34
第3章 程序控製語句 36
3.1 選擇語句 36
3.1.1 簡單的if語句 36
3.1.2 if-else語句 37
3.1.3 if嵌套語句 38
3.1.4 switch語句 40
3.2 循環語句 42
3.2.1 while循環語句 42
3.2.2 do-while循環語句 43
3.2.3 for循環語句 45
3.3 與程序有關的其他語句 47
3.3.1 break語句 47
3.3.2 continue語句 51
3.3.3 return語句 52
3.4 實驗指導 53
3.5 思考與練習 53
第4章 數組 56
4.1 一維數組 56
4.1.1 聲明數組和創建數組 56
4.1.2 一維數組初始化及元素
引用 57
4.2 多維數組 60
4.2.1 聲明數組和創建數組 60
4.2.2 初始化數組 61
4.2.3 數組程序舉例 62
4.3 不規則數組 67
4.4 搜索數組 70
4.5 排序數組 72
4.5.1 選擇排序 72
4.5.2 冒泡排序 73
4.5.3 快速排序 75
4.6 實驗指導 76
4.7 思考與練習 78
第5章 類、對象和方法 79
5.1 Java類 79
5.1.1 類的基本形式 79
5.1.2 類的定義 80
5.2 創建對象 82
5.3 對象引用變量 83
5.4 方法 84
5.4.1 添加方法 85
5.4.2 調用對象的方法 86
5.4.3 將對象傳遞給方法 87
5.5 構造函數和垃圾迴收 88
5.5.1 構造函數 88
5.5.2 垃圾迴收 89
5.6 new運算符 90
5.7 類成員的訪問控製 90
5.8 共享變量、常量和靜態方法 91
5.9 this關鍵字 94
5.10 對象數組 95
5.11 實驗指導 97
5.12 思考與練習 98
第6章 繼承和接口 101
6.1 繼承 101
6.1.1 超類和子類 101
6.1.2 成員訪問和繼承 103
6.2 super關鍵字 105
6.2.1 使用super調用超類
構造函數 106
6.2.2 使用super訪問超類成員 109
6.2.3 創建多級層次結構 110
6.2.4 何時調用構造函數 112
6.3 方法重載和方法重寫 113
6.3.1 方法重載 113
6.3.2 方法重寫 114
6.3.3 重寫的方法支持多態性 115
6.3.4 使用重寫方法的原因 116
6.4 抽象類 117
6.5 繼承中的final修飾符 119
6.5.1 使用final防止重寫 119
6.5.2 使用final防止繼承 120
6.6 Object類 120
6.6.1 clone方法 121
6.6.2 equals方法 121
6.6.3 toString方法 122
6.7 接口 122
6.7.1 接口定義 122
6.7.2 實現接口 123
6.7.3 接口引用 126
6.7.4 接口中的變量 128
6.7.5 接口的擴展 129
6.8 實驗指導 130
6.9 思考與練習 131
第7章 字符串 133
7.1 字符類 133
7.1.1 構造字符串 133
7.1.2 匹配字符串 136
7.1.3 求字符串長度和檢索
單個字符 136
7.1.4 字符串比較 137
7.1.5 查找子字符串 138
7.2 Character類 141
7.2.1 Character類的介紹 141
7.2.2 Character類方法的應用 142
7.3 StringBuffer類 144
7.3.1 構造StringBuffer類 145
7.3.2 StringBuffer類常用方法 146
7.3.3 StringBuffer類特有的
方法 148
7.3.4 StringBuffer類特有方法
的應用示例 148
7.4 實驗指導 151
7.5 思考與練習 152
第8章 包和Applet 155
8.1 包 155
8.1.1 定義包 155
8.1.2 導入包 156
8.1.3 類路徑(CLASSPATH) 157
8.1.4 訪問控製 157
8.2 applet程序 160
8.2.1 applet類 160
8.2.2 請求重繪 163
8.3 HTML APPLET標記 164
8.4 將參數傳遞到applet 165
8.5 實驗指導 166
8.6 思考與練習 167
第9章 GUI編程基礎 169
9.1 GUI類 169
9.2 框架 171
9.2.1 創建框架 171
9.2.2 在框架內添加組件 172
9.3 布局管理 173
9.3.1 FlowLayout 173
9.3.2 GridLayout 174
9.3.3 BorderLayout 175
9.3.4 CardLayout 177
9.3.5 GridBagLayout 179
9.3.6 null 182
9.4 麵闆容器 183
9.5 事件 185
9.5.1 事件和事件源 185
9.5.2 事件監聽 186
9.5.3 處理事件 188
9.6 用戶界麵對象(UI) 192
9.6.1 按鈕 192
9.6.2 標簽 195 [1]
9.6.3單行文本框和多行文本域 196
9.6.4復選框和單選按鈕 199
9.6.5組閤框 203
9.6.6滾動條 206
9.6.7滾動麵闆 209
9.6.8菜單 210
9.7GUI繪圖 213
9.7.1顔色 214
9.7.2繪製幾何圖形 214
9.7.3顯示字體 218
9.8實驗指導 221
9.9思考與練習 223
第10章異常處理 227
10.1異常和異常類型 227
10.1.1異常的含義 227
10.1.2異常類型 228
10.2理解異常處理 228
10.3聲明異常(throws) 230
10.4拋齣異常(throw) 231
10.5捕獲異常 233
10.5.1使用try-catch 233
10.5.2使用多重catch語句 235
10.5.3嵌套try語句 236
10.6finally的用法 238
10.7異常的應用 240
10.7.1Java中的內置異常 241
10.7.2創建自定義的異常類 242
10.7.3輸齣警告信息 244
10.7.4應用異常的建議 245
10.8實驗指導 246
10.9思考與練習 248
第11章綫程與多綫程 251
11.1綫程與多綫程 251
11.1.1綫程的性質 252
11.1.2綫程的狀態 254
11.1.3守護綫程 254
11.2創建綫程 256
11.2.1擴展Thread類創建綫程 257
11.2.2實現Runnable接口創建綫程 259
11.2.3創建多綫程 260
11.3多綫程程序設計 263
11.3.1多綫程同時運行 263
11.3.2多綫程優先級調度 267
11.3.3多綫程的互斥和同步 269
11.3.4死鎖 276
11.4多綫程的控製 280
11.4.1判斷綫程是否結束 281
11.4.2綫程阻塞 283
11.4.3處理綫程阻塞 284
11.5綫程的應用 288
11.5.1為applet創建綫程 289
11.5.2使用Timer類來控製動畫 290
11.6實驗指導 295
11.7思考與練習 295
第12章輸入輸齣係統 297
12.1Java的I/O基於流 297
12.1.1字節流 298
12.1.2字符流 299
12.1.3預定義流 300
12.2字節流 302
12.2.1InputStream類和OutputStream類 302
12.2.2文件字節流的順序輸入輸齣 303
12.2.3文件字節流的隨機訪問 306
12.3過濾流 308
12.3.1DataInputStream和DataOutputStream 309
12.3.2BufferedInputStream和BufferedOutputStream 310
12.3.3LineNumberInputStream 311
12.3.4PushbackInputStream 312
12.4字符流 313
12.4.1基類Reader和Writer 313
12.4.2InputStreamReader和OutputStreamWriter 314
12.4.3FileReader和
FileWriter 315
12.4.4BufferedReader和
BufferedWriter 316
12.4.5PrintWriter類 317
12.5File類 318
12.5.1File類的3種構造函數 318
12.5.2File類的常用方法 319
12.6對象的串行化 321
12.7實驗指導 325
12.8思考與練習 326
第13章網絡通信和多媒體 328
13.1網絡基礎知識 328
13.1.1域名和IP地址 328
13.1.2端口號(port) 330
13.2Socket(套接字)通信 330
13.3UDP和FTP類型通信 334
13.3.1UDP通信介紹 334 [3]
13.3.2FTP通信介紹 335
13.4applet通信 336
13.4.1同頁applet之間的通信 336
13.4.2applet和瀏覽器之間的通信 340
13.5多媒體 342
13.5.1Applet中播放音頻 342
13.5.2Applet中顯示圖像 345
13.5.3在應用程序中載入圖像和音頻文件 347
13.5.4顯示一列圖像 351
13.5.5MediaTracker 353
13.6實驗指導 355
13.7思考與練習 356
第14章數據庫編程 358
14.1JDBC簡介 358
14.2JDBC應用模型 359
14.3java.sql包 360
14.4訪問數據庫 360
14.4.1配置ODBC數據源 360
14.4.2加載JDBC驅動程序 361
14.4.3創建數據庫連接 362
14.4.4執行SQL語句 363
14.4.5處理結果集 364
14.4.6更新數據庫 369
14.4.7數據庫連接 372
14.5使用預編譯SQL語句 373
14.6獲取數據庫信息 375
14.7實驗指導 377
14.8思考與練習 378
第15章Java的數據結構 381
15.1瞭解Java集閤架構 381
15.2Collection接口、Map接口及其子接口 383
15.2.1Collection接口 383
15.2.2Set接口和SortedSet接口 384
15.2.3List接口 384
15.2.4Map接口和SortedMap接口 385
15.3AbstractSet類和HashSet類 386
15.4TreeSet類和Comparator接口 387
15.4.1使用TreeSet類 387
15.4.2使用Comparator接口 388
15.5ArrayList類和LinkedList類 389
15.6Vector類和Stack類 390
15.7HashMap類和TreeMap類 392
15.8Collections類和Arrays類 395
15.8.1使用Collections類 395
15.8.2使用Arrays類 398
15.9實驗指導 400
15.10思考與練習 400
附錄思考與練習答案 402
· · · · · · (
收起)