Java程序設計(第5版)
辛運幃、饒一梅
相關主題
商品描述
目錄大綱
目 錄
第1章 概述 1
1.1 什麽是Java語言 1
1.1.1 Java語言的特點 1
1.1.2 Java的三層架構 3
1.1.3 Java語言的目標 4
1.1.4 Java虛擬機 4
1.1.5 垃圾收集 5
1.1.6 代碼安全 5
1.2 一個基本的Java應用程序 8
1.2.1 開發環境的安裝 8
1.2.2 Java應用程序 11
1.3 程序的編譯和運行 13
1.3.1 編譯 13
1.3.2 運行 14
1.4 常見錯誤 14
1.4.1 編譯時錯誤 14
1.4.2 運行時錯誤 15
1.5 使用Java核心API文檔 17
習題 19
第2章 標識符和數據類型 20
2.1 Java的基本語法單位 20
2.1.1 空白、註釋及語句 20
2.1.2 關鍵字 22
2.1.3 標識符 22
2.2 Java編碼體例 23
2.3 Java的基本數據類型 24
2.3.1 基本數據類型 24
2.3.2 類型轉換 27
2.3.3 變量、說明和賦值 27
2.4 復合數據類型 29
2.4.1 概述 29
2.4.2 復合數據類型 29
2.5 類和對象的初步介紹 30
2.5.1 Java中的面向對象技術 30
2.5.2 Java中的類定義 32
2.5.3 Java中與OOP有關的關鍵字 33
2.5.4 類定義示例 35
2.5.5 創建一個對象 38
2.5.6 引用變量的賦值 40
2.5.7 默認初始化和null引用值 41
2.5.8 術語概述 41
習題 42
第3章 表達式和流程控制語句 44
3.1 表達式 44
3.1.1 操作數 44
3.1.2 運算符 48
3.1.3 表達式的提升和轉換 52
3.1.4 數學函數 52
3.2 流控制 53
3.2.1 表達式語句 53
3.2.2 塊 54
3.2.3 分支語句 54
3.2.4 循環語句 59
3.2.5 break語句與continue語句 62
3.2.6 註釋語句 64
3.3 簡單的輸入輸出 64
習題 67
第4章 數組、向量和字符串 70
4.1 數組 70
4.1.1 數組說明 70
4.1.2 創建數組 71
4.1.3 數組邊界 74
4.1.4 數組元素的引用 74
4.1.5 多維數組 75
4.1.6 數組復制 80
4.2 Vector類 81
4.2.1 概述 81
4.2.2 Vector類的構造方法 82
4.2.3 Vector類對象的操作 82
4.2.4 Vector類中的其他方法 84
4.2.5 Vector類的使用舉例 84
4.3 字符串類型 86
4.3.1 字符串簡述 86
4.3.2 字符串說明及初始化 86
4.3.3 字符串處理 87
4.3.4 幾個特殊處理 88
習題 90
第5章 進一步討論對象和類 93
5.1 抽象數據類型 93
5.1.1 概述 93
5.1.2 定義方法 94
5.1.3 按值傳送 97
5.1.4 方法重載 98
5.2 對象的構造和初始化 99
5.2.1 顯式成員初始化 100
5.2.2 構造方法 100
5.2.3 默認的構造方法 101
5.2.4 構造方法重載 102
5.2.5 finalize()方法 103
5.2.6 this引用 103
5.3 子類 104
5.3.1 is-a關系 105
5.3.2 extends關鍵字 105
5.3.3 單重繼承 106
5.3.4 轉換對象 108
5.3.5 方法自變量和異類集合 110
5.4 方法重寫 111
5.4.1 方法重寫示例 111
5.4.2 應用重寫的規則 115
5.4.3 調用父類構造方法 116
5.5 多態 117
5.6 Java包 118
5.6.1 Java包的概念 119
5.6.2 import語句 119
5.6.3 目錄層次關系及CLASSPATH環境變量 121
5.6.4 訪問權限與數據隱藏 122
5.6.5 封裝 123
5.7 類成員 124
5.7.1 類變量 124
5.7.2 類方法 126
5.8 final關鍵字 128
5.8.1 終極類 128
5.8.2 終極方法 129
5.8.3 終極變量 130
5.9 抽象類 131
5.10 接口 133
5.10.1 接口的定義 133
5.10.2 接口的實現 134
5.11 內部類 137
5.11.1 內部類的概念 137
5.11.2 匿名類 139
5.11.3 內部類的工作方式 140
5.12 包裝類 141
習題 142
第6章 Java語言中的異常 145
6.1 異常 145
6.1.1 引出異常 145
6.1.2 異常的概念 147
6.1.3 異常分類 148
6.2 異常處理 149
6.2.1 try-catch塊 150
6.2.2 再討論前面的示例 152
6.2.3 公共異常 153
6.3 拋出異常 154
6.4 創建自己的異常 155
習題 157
第7章 Java語言的高級特性 158
7.1 泛型 158
7.1.1 泛型數據類型 158
7.1.2 接口中的泛型 158
7.1.3 泛型類 159
7.1.4 泛型方法 161
7.2 迭代器 162
7.2.1 迭代器的基本概念 162
7.2.2 Iterator接口 162
7.2.3 Iterable接口 164
7.2.4 使用迭代器示例 164
7.2.5 Iterable和for-each循環 167
7.3 克隆 168
習題 176
第8章 Java的圖形用戶界面設計 178
8.1 AWT與Swing 178
8.2 容器 179
8.2.1 頂層容器 179
8.2.2 使用JFrame創建應用程序 180
8.2.3 內容窗格 181
8.2.4 面板 182
8.3 佈局 183
8.3.1 一個簡單的示例 183
8.3.2 FlowLayout佈局管理器 185
8.3.3 BorderLayout佈局管理器 186
8.3.4 GridLayout佈局管理器 188
8.3.5 CardLayout佈局管理器 190
8.3.6 BoxLayout佈局管理器 192
8.3.7 其他佈局管理器 197
8.4 事件處理 198
8.4.1 事件處理模型 198
8.4.2 事件的種類 200
8.4.3 一個較復雜的示例 202
8.4.4 多監聽程序 204
8.4.5 事件適配器 205
習題 206
第9章 Swing組件 208
9.1 按鈕 208
9.1.1 普通按鈕 208
9.1.2 切換按鈕、復選框及單選按鈕 212
9.2 標簽 218
9.3 組合框 221
9.4 列表 223
9.5 文本組件 229
9.5.1 文本域 229
9.5.2 文本區 234
9.6 菜單組件 236
9.6.1 菜單欄 237
9.6.2 菜單 237
9.6.3 菜單項 238
9.6.4 復選菜單項和單選菜單項 239
9.6.5 彈出式菜單 242
9.7 對話框、標準對話框與文件對話框 245
9.7.1 對話框 245
9.7.2 標準對話框 246
9.7.3 文件對話框 250
9.8 控制組件外觀 253
9.8.1 顏色 253
9.8.2 字體 254
9.8.3 繪圖 256
習題 260
第10章 Java Applet 261
10.1 編寫Applet 263
10.2 Applet的方法和Applet的生命周期 265
10.3 Applet的運行 266
10.3.1 用於顯示Applet的方法 266
10.3.2 appletviewer 268
10.3.3 HTML與<applet>標記 268
10.3.4 Applet參數的讀取 270
10.3.5 Applet與URL 271
10.4 Applet中的多媒體處理 272
10.4.1 在Applet中顯示圖像 272
10.4.2 在Applet中播放聲音 273
10.5 Applet的事件處理 275
10.6 Applet與普通應用程序的結合 276
習題 278
第11章 Java數據流 279
11.1 數據流的基本概念 279
11.1.1 輸入數據流 280
11.1.2 輸出數據流 281
11.2 基本字節數據流類 282
11.2.1 文件數據流 282
11.2.2 過濾流 284
11.2.3 管道數據流 285
11.2.4 對象流 287
11.2.5 可持久化 288
11.3 基本字符流 291
11.3.1 讀者和寫者 291
11.3.2 緩沖區讀者和緩沖區寫者 292
11.4 文件的處理 296
11.4.1 File類 296
11.4.2 隨機訪問文件 299
習題 299
第12章 線程 301
12.1 線程和多線程 301
12.1.1 線程的概念 301
12.1.2 線程的結構 302
12.2 線程的狀態 303
12.3 線程的創建 304
12.3.1 創建線程的方法一——繼承Thread類 305
12.3.2 創建線程的方法二——實現Runnable接口 307
12.3.3 關於兩種創建線程方法的討論 309
12.4 線程的啟動 310
12.5 線程的調度 310
12.6 線程的基本控制 312
12.6.1 結束線程 312
12.6.2 檢查線程 312
12.6.3 掛起線程 312
12.7 同步問題 313
12.7.1 線程間的通信 313
12.7.2 線程間的資源互斥共享 315
12.7.3 對象的鎖定標志 317
12.7.4 同步方法 318
12.8 死鎖 319
12.9 線程交互——wait()和notify() 321
12.9.1 問題的提出 321
12.9.2 解決方法 322
12.9.3 守護線程 323
12.9.4 綜合應用 324
習題 329
第13章 Java的網絡功能 330
13.1 概述 330
13.2 使用InetAddress 332
13.3 統一資源定位器 333
13.3.1 URL的概念 333
13.3.2 URL的構造方法 334
13.3.3 與URL相關的異常 335
13.3.4 獲取URL對象屬性 335
13.3.5 讀入URL數據 336
13.4 Socket接口 339
13.4.1 Socket的基本概念 340
13.4.2 Socket通信的基本步驟 341
13.4.3 Socket通信的程序設計 342
13.5 Java編程綜合實例 344
習題 351
參考文獻 352
·X·
·III·