Java語言最新實用案例教程(第2版)

Java語言最新實用案例教程(第2版)

《Java語言最新實用案例教程(第2版)》是2013年清華大學出版社出版的圖書。

圖書簡介

Java具有面向對象、與平台無關、安全、穩定和多執行緒等特點,是目前最流行的程式設計語言之一。全書共分9章,按Java知識的系統性,由淺入深、循序漸進地介紹了Java語言實用知識與編程技術。內容包括Java語言概述、流程控制與異常處理、Java面向對象程式設計、數組與集合、GUI程式設計、Java資料庫編程、流和檔案、多執行緒與Applet以及Java網路編程。每部分內容既有示例,又有案例。通過示例可以幫助學生理解知識,通過案例可以將各知識點結合起來,指導學生套用知識,學以致用。教材中引進了一些新知識和新方法,內容實用,重點突出,講解精練,案例典型,既方便學習,又便於套用。每章配備的課後習題參考了目前市場上常用的企業面試題,針對性強,訓練價值大。

本書內容豐富,實例典型,知識講解系統,適合作為高等院校計算機及相關專業的教材或參考書,也適合軟體開發人員及其他有關人員作為自學參考書或培訓教程。

圖書目錄

第1章Java語言概述 1

1.1Java語言簡介 1

1.1.1Java語言的產生 1

1.1.2Java套用體系 2

1.2Java的工作原理及特點 2

1.2.1Java的工作原理 2

1.2.2Java語言的特點 3

1.3Java編程環境 5

1.3.1JSEDK及其安裝 5

1.3.2Java開發工具 6

1.4Java程式結構 7

1.4.1Java應用程式 8

1.4.2案例1-1:包含兩個類的程式 10

1.4.3Applet程式 11

1.4.4案例1-2:一個簡單的繪圖程式 12

1.4.5Application與Applet程式的比較 12

1.5Java語言基礎 13

1.5.1基本編碼規則 13

1.5.2案例1-3:代碼注釋 14

1.5.3數據類型 16

1.5.4常量和變數 18

1.5.5運算符和表達式 19

1.5.6Math類 23

1.5.7數據類型轉換 24

1.6字元串和日期 25

1.6.1字元串 25

1.6.2案例1-4:對輸入的字元串進行處理 29

1.6.3日期和時間 31

1.6.4案例1-5:日期工具類 33

1.7本章小結 36

1.8習題 36

第2章流程控制與異常處理 38

2.1分支結構 38

2.1.1if語句 38

2.1.2案例2-1:求一元二次方程的根 42

2.1.3switch語句 43

2.1.4案例2-2:求下一天日期 46

2.2循環結構 48

2.2.1for循環 48

2.2.2案例2-3:求素數 49

2.2.3while循環 50

2.2.4循環嵌套 51

2.2.5案例2-4:求sinx 51

2.2.6do…while循環 53

2.2.7案例2-5:進制轉換 53

2.2.8疊代循環 55

2.3異常處理 56

2.3.1異常及其體系結構 56

2.3.2異常處理機制 57

2.3.3拋出異常 60

2.3.4案例2-6:整數的算術計算 61

2.3.5自定義異常 62

2.3.6案例2-7:求三角形面積 63

2.4本章小結 64

2.5習題 65

第3章Java面向對象程式設計 66

3.1面向對象編程 66

3.1.1對象和類 66

3.1.2面向對象程式設計 67

3.1.3OOP的4個基本特徵 68

3.2類與對象 69

3.2.1定義類 69

3.2.2創建和使用對象 70

3.2.3案例3-1:測試圓類 71

3.2.4構造方法 72

3.2.5析構方法 73

3.2.6案例3-2:Person類 73

3.3訪問控制 75

3.3.1包與類的訪問控制 75

3.3.2成員的訪問控制與屬性方法 76

3.3.3案例3-3:使用許可權修飾符的Person類 76

3.4類變數、類常量和類方法 78

3.4.1實例變數、類變數和類常量 78

3.4.2變數的作用域與this關鍵字 79

3.4.3實例方法和類方法 80

3.4.4案例3-4:銀行賬戶 81

3.5類的方法重載 83

3.5.1方法的參數類型 83

3.5.2案例3-5:演示方法的參數類型 83

3.5.3方法重載 85

3.6類的繼承 86

3.6.1繼承的基本概念 86

3.6.2創建子類 86

3.6.3方法覆蓋 89

3.6.4案例3-6:用繼承的方式定義Student類和Teacher類 90

3.7抽象類、接口及多態性 92

3.7.1抽象類 92

3.7.2案例3-7:一組圖形類 93

3.7.3接口 96

3.7.4案例3-8:模擬學生管理系統的數據訪問層和邏輯層 100

3.7.5多態性 103

3.8最終類和內部類 103

3.8.1最終類 103

3.8.2內部類 103

3.8.3案例3-9:內部類使用演示 105

3.9Java枚舉類型 107

3.9.1枚舉類型概述 107

3.9.2案例3-10:Week枚舉類型 109

3.10本章小結 110

3.11習題 111

第4章數組與集合 113

4.1數組 113

4.1.1數組的概念 113

4.1.2數組的定義 113

4.1.3案例4-1:成績排序和統計 115

4.2Collection 117

4.2.1Java集合框架 117

4.2.2Collection接口常用方法 117

4.2.3遍歷Collection 118

4.2.4Collection的批量操作 119

4.3集 120

4.3.1HashSet類 120

4.3.2案例4-2:用HashSet存儲用戶對象 121

4.3.3TreeSet類 123

4.3.4案例4-3:使用TreeSet存儲學生對象 123

4.4列表 126

4.4.1List接口 126

4.4.2ArrayList類 127

4.4.3案例4-4:競賽評分程式 128

4.4.4Vector類 131

4.5映射 131

4.5.1Map接口 131

4.5.2HashMap類 132

4.5.3案例4-5:購物車 132

4.5.4Hashtable類 135

4.6Collections和Arrays 136

4.6.1Collections類 136

4.6.2Arrays類 137

4.7本章小結 138

4.8習題 139

第5章GUI程式設計 141

5.1Java圖形API 141

5.1.1AWT與Swing 141

5.1.2圖形API與Swing組件結構 142

5.1.3怎樣在容器中添加組件 143

5.2圖形界面基礎 143

5.2.1視窗 143

5.2.2案例5-1:學生管理系統啟動界面和主界面設計 145

5.2.3對話框 147

5.2.4常用組件 149

5.2.5案例5-2:登錄視窗 151

5.3選單和工具列 153

5.3.1選單 153

5.3.2案例5-3:為學生管理系統主界面設計選單 155

5.3.3工具列 158

5.3.4案例5-4:為學生管理系統主界面增加工具列 159

5.4界面布局和其他組件使用 160

5.4.1界面布局 160

5.4.2案例5-5:布局演示 162

5.5其他組件的使用 166

5.5.1其他組件介紹 166

5.5.2案例5-6:添加學生界面設計 169

5.6事件處理機制 170

5.6.1事件處理模型 171

5.6.2事件處理 172

5.6.3常用事件 174

5.6.4案例5-7:利用滑鼠和鍵盤控制圖片顯示 175

5.7圖形圖像基礎 178

5.7.1設定字型 178

5.7.2設定顏色 179

5.7.3Graphics類與繪圖方法 180

5.7.4案例5-8:繪製一個小車 181

5.7.52D繪圖簡介 183

5.7.6顯示圖像 184

5.7.7案例5-9:按不同方式顯示圖像 185

5.8本章小結 186

5.9習題 186

第6章Java資料庫編程 188

6.1JDBC簡介 188

6.1.1什麼是JDBC 188

6.1.2JDBC的重要類和接口 189

6.2基於JDBC編寫資料庫程式 189

6.2.1設計準備 189

6.2.2案例6-1:學生管理系統資料庫設計 194

6.2.3使用JDBC訪問資料庫的一般步驟 196

6.2.4套用MVC設計模式 196

6.3資料庫的連線 197

6.3.1DriverManager 197

6.3.2Connection 197

6.3.3使用JDBC-ODBC橋實現資料庫的連線 198

6.3.4使用純JavaJDBC驅動程式 198

6.3.5案例6-2:連線學生管理資料庫 200

6.4數據的基本操作 201

6.4.1數據操作的基本原理 201

6.4.2常用的查詢方法 203

6.4.3案例6-3:顯示學生數據 204

6.4.4更新數據 208

6.4.5案例6-4:修改學生數據 209

6.4.6事務處理 214

6.5數據查詢界面設計 214

6.5.1案例6-5:以表格形式顯示學生數據查詢結果 214

6.5.2案例6-6:分頁顯示學生數據查詢結果 217

6.6使用存儲過程 222

6.6.1存儲過程的定義 222

6.6.2調用存儲過程 223

6.6.3案例6-7:使用存儲過程查詢學生成績 224

6.7大對象的存取 227

6.7.1大對象存儲的基本方法 227

6.7.2案例6-8:設定學生照片 228

6.8本章小結 232

6.9習題 232

第7章流和檔案 234

7.1檔案管理基礎 234

7.1.1使用File類管理檔案 234

7.1.2案例7-1:遞歸顯示或刪除檔案 237

7.1.3過濾器與檔案選擇對話框 238

7.2字元流與文本檔案讀寫 242

7.2.1字元流簡介 242

7.2.2檔案字元流 243

7.2.3案例7-2:用字元流複製檔案 244

7.3位元組流與二進制檔案讀寫 246

7.3.1位元組流簡介 246

7.3.2檔案位元組流簡介 247

7.3.3案例7-3:用位元組流複製檔案 248

7.4數據流和對象流 250

7.4.1數據流簡介 250

7.4.2案例7-4:使用數據流讀寫檔案 251

7.4.3對象流簡介 252

7.4.4案例7-5:以對象為單位讀寫數據 253

7.5檔案的隨機讀寫 254

7.5.1RandomAccessFile簡介 254

7.5.2案例7-6:隨機讀寫檔案 254

7.6本章小結 256

7.7習題 256

第8章多執行緒與Applet 258

8.1執行緒概述 258

8.1.1執行緒與進程 258

8.1.2執行緒的優點 259

8.1.3執行緒體與執行緒載體 259

8.2執行緒的創建 259

8.2.1實現Runnable接口創建執行緒 259

8.2.2案例8-1:為學生管理系統增加狀態欄 260

8.2.3擴展Thread類建立執行緒 261

8.2.4案例8-2:利用執行緒設計啟動界面 262

8.2.5建立執行緒的兩種方法的比較 263

8.2.6Thread類 264

8.3執行緒的狀態與控制 264

8.3.1執行緒的狀態 264

8.3.2執行緒的控制 266

8.3.3案例8-3:圖片切換 268

8.3.4執行緒組 271

8.4執行緒的優先權 272

8.4.1Java執行緒優先權 272

8.4.2案例8-4:數數程式 272

8.5執行緒同步 274

8.5.1Java執行緒同步機制 274

8.5.2案例8-5:取款和存款 275

8.5.3死鎖 277

8.6執行緒通信 278

8.6.1Java執行緒通信機制 278

8.6.2案例8-6:哲學家用餐問題 279

8.6.3“生產者-消費者”問題 281

8.6.4案例8-7:吃蘋果 281

8.7執行緒新特徵 284

8.7.1阻塞佇列與障礙器 284

8.7.2執行緒池、鎖及條件變數 286

8.7.3案例8-8:不能透支的取款和存款 288

8.8Applet程式設計 291

8.8.1Applet程式原理 291

8.8.2案例8-9:在Applet中隨機畫圓 293

8.8.3Applet中實現動畫的基本原理 294

8.8.4案例8-10:在Applet中實現動畫 295

8.8.5向Applet傳遞參數 297

8.8.6案例8-11:繪製統計圖 297

8.9本章小結 298

8.10習題 299

第9章Java網路編程 300

9.1網路編程基礎 300

9.1.1網路基本概念 300

9.1.2網路協定 301

9.2獲取網路信息 302

9.2.1獲取網路地址信息 302

9.2.2案例9-1:通過InetAddress獲取主機名或IP 303

9.2.3獲取網路資源屬性 304

9.2.4案例9-2:通過URL獲取絡資源屬性 305

9.3訪問網路資源 306

9.3.1獲取網路資源 306

9.3.2案例9-3:讀取網路文本檔案 307

9.3.3使用JEditorPane瀏覽HTML網頁 309

9.3.4案例9-4:簡單的瀏覽器 310

9.4基於TCP/IP協定的通信 312

9.4.1客戶機/伺服器模式和套接字 312

9.4.2客戶端程式的原理 313

9.4.3案例9-5:TCP的客戶端程式 314

9.4.4伺服器程式的原理 318

9.4.5案例9-6:TCP伺服器端程式 319

9.5基於UDP/IP協定的通信 324

9.5.1數據報通信的原理 324

9.5.2案例9-7:基於數據報的主機通信 325

9.6本章小結 329

9.7習題 329

參考文獻 331

XII

Java語言最新實用案例教程(第2版)

XI

目錄

相關詞條

熱門詞條

聯絡我們