Java應用開發與實踐

劉乃琦 蘇暢 主編

  • 出版商: 人民郵電
  • 出版日期: 2021-06-01
  • 定價: $312
  • 售價: 8.5$265
  • 語言: 簡體中文
  • 頁數: 412
  • ISBN: 7115299218
  • ISBN-13: 9787115299215
  • 下單後立即進貨 (約4週~6週)

  • Java應用開發與實踐-preview-1
Java應用開發與實踐-preview-1

商品描述

本書作為Java 技術課程的教材,系統全面地介紹了有關Java 開發所涉及的各類知識。全書共分22 章,內容包括初識Java、Eclipse 開發工具、Java 語言基礎、流程控制、數組、字符串、類和對象、接口、繼承與多態、類的高特、異常處理、輸入輸出、Swing 程序設計、事件處理、表格組件的應用、樹組件的應用、多線程、圖形繪制技術、常用工具類、數據庫編程應用、綜合案例--快遞打印系統、課程設計--軟件註冊程序、課程設計--決策分析程序。每章內容都與實例緊密結合,有助於學生理解知識、應用知識,達到學以致用的目的。

作者簡介

作者负责和参与了十余项科研和应用工程项目,获得若干技术认证,在国内外学术刊物、学术会议上发表学术论文50余篇,编著出版学术著作和教材十余本。2010年9月,被评为四川省级教学名师。

目錄大綱

目 錄

第 1章 初識Java 1

1.1 什麽是Java語言 1

1.1.1 Java語言歷史 1

1.1.2 Java的運行機制 2

1.2 Java語言現狀 2

1.3 Java語言特性 3

1.3.1 簡單 3

1.3.2 面向對象 3

1.3.3 分佈性 3

1.3.4 可移植性 3

1.3.5 解釋型 4

1.3.6 安全性 4

1.3.7 健壯性 4

1.3.8 多線程 4

1.3.9 高性能 4

1.3.10 動態 4

1.4 JDK的下載和安裝 4

1.4.1 下載JDK 4

1.4.2 安裝JDK 6

1.4.3 配置JDK 8

1.5 第 一個Java程序 9

1.5.1 編寫源代碼 10

1.5.2 編譯源代碼 10

1.5.3 運行class文件 10

1.6 綜合實例——用星號繪制等腰三角形 11

知識點提煉 12

習題 12

實驗:驗證Java開發環境 12

實驗目的 12

實驗內容 12

實驗步驟 13

第 2章 Eclipse開發工具 14

2.1 Eclipse簡介 14

2.2 Eclipse安裝與漢化 14

2.2.1 下載Eclipse 14

2.2.2 安裝Eclipse 15

2.2.3 啟動Eclipse 16

2.2.4 漢化Eclipse 17

2.3 第 一個Java項目 19

2.3.1 創建Java項目 19

2.3.2 創建類文件 19

2.3.3 編寫程序代碼 19

2.3.4 運行Java程序 20

2.3.5 以調試方式運行程序 20

2.4 綜合實例——在Eclispe中輸出字符表情 21

知識點提煉 21

習題 21

實驗:設置API提示信息 22

實驗目的 22

實驗內容 22

實驗步驟 22

第3章 Java語言基礎 24

3.1 Java程序的基本結構 24

3.2 標識符和關鍵字 26

3.2.1 標識符 26

3.2.2 關鍵字 26

3.3 基本數據類型 27

3.3.1 整數類型 27

3.3.2 浮點類型 29

3.3.3 字符類型 30

3.3.4 布爾類型 31

3.4 變量與常量 31

3.4.1 聲明變量 31

3.4.2 聲明常量 32

3.4.3 變量的有效範圍 32

3.5 運算符 33

3.5.1 賦值運算符 33

3.5.2 算術運算符 33

3.5.3 自增和自減運算符 34

3.5.4 比較運算符 34

3.5.5 邏輯運算符 35

3.5.6 位運算符 36

3.5.7 三元運算符 38

3.5.8 運算符優先級 39

3.6 類型轉換 39

3.6.1 自動類型轉換 40

3.6.2 強制類型轉換 40

3.7 代碼註釋和編碼規範 40

3.7.1 代碼註釋 41

3.7.2 編碼規範 42

3.8 綜合實例——使用位運算加密字符串 42

知識點提煉 43

習題 43

實驗:實現兩個變量的互換 44

實驗目的 44

實驗內容 44

實驗步驟 44

第4章 流程控制 45

4.1 復合語句 45

4.2 分支結構 46

4.2.1 if條件語句 46

4.2.2 switch多分支語句 49

4.3 循環語句 51

4.3.1 while循環語句 51

4.3.2 do…while循環語句 51

4.3.3 for循環語句 52

4.4 跳轉語句 54

4.4.1 break語句 54

4.4.2 continue語句 55

4.4.3 return語句 55

4.5 綜合實例——判斷今年是否為閏年 56

知識點提煉 57

習題 57

實驗:使用for循環輸出空心菱形 57

實驗目的 57

實驗內容 57

實驗步驟 57

第5章 數組 59

5.1 數組概述 59

5.2 一維數組 60

5.2.1 創建一維數組 60

5.2.2 初始化一維數組 61

5.3 二維數組 61

5.3.1 創建二維數組 61

5.3.2 初始化二維數組 61

5.4 數組的基本操作 62

5.4.1 遍歷數組 62

5.4.2 復制數組 62

5.4.3 填充數組 63

5.4.4 排序數組元素 64

5.4.5 查找數組元素 65

5.5 綜合實例——實現冒泡排序算法 66

知識點提煉 66

習題 67

實驗:互換二維數組的行列 67

實驗目的 67

實驗內容 68

實驗步驟 68

第6章 字符串 69

6.1 創建字符串 69

6.2 字符串操作 70

6.2.1 字符串連接 70

6.2.2 獲取字符串信息 71

6.2.3 字符串比較 73

6.2.4 字符串替換 74

6.2.5 字符串分割 75

6.2.6 大小寫轉換 76

6.2.7 去除首末空格 76

6.3 格式化字符串 77

6.3.1 格式化方法 77

6.3.2 日期格式化 77

6.3.3 時間格式化 78

6.3.4 日期時間組合格式化 79

6.3.5 常規類型格式化 80

6.4 正則表達式 81

6.4.1 判斷是否符合正則表達式的方法 81

6.4.2 正則表達式的元字符 81

6.4.3 正則表達式的限定符 82

6.4.4 方括號中元字符的含義 83

6.5 可變字符串 84

6.6 綜合實例——驗證IP地址合法性 85

知識點提煉 86

習題 86

實驗:統計漢字個數 86

實驗目的 86

實驗內容 86

實驗步驟 87

第7章 類和對象 88

7.1 面向對象編程基本概念 88

7.1.1 什麽是對象? 88

7.1.2 什麽是類? 89

7.1.3 什麽是封裝? 90

7.1.4 什麽是繼承? 91

7.1.5 什麽是多態? 91

7.2 類和對象 92

7.2.1 訪問權限修飾符 92

7.2.2 類的定義 93

7.2.3 成員變量的定義 93

7.2.4 普通方法的定義 94

7.2.5 局部變量的定義 95

7.2.6 構造方法的定義 95

7.2.7 方法參數的傳遞 96

7.2.8 對象創建和使用 99

7.2.9 this關鍵字的用途 101

7.2.10 static關鍵字的用途 102

7.2.11 final關鍵字的用途 103

7.2.12 包的定義與使用 103

7.3 註解 104

7.3.1 預定義註解 104

7.3.2 自定義註解 104

7.4 綜合實例——構造方法的應用 105

知識點提煉 106

習題 106

實驗:溫度單位轉換工具 107

實驗目的 107

實驗內容 107

實驗步驟 107

第8章 接口、繼承與多態 108

8.1 接口的使用 108

8.1.1 接口的定義 108

8.1.2 接口的實現 109

8.2 類的繼承 110

8.2.1 繼承的實現 110

8.2.2 繼承中的重寫 111

8.2.3 使用super關鍵字 112

8.3 多態 112

8.4 Object類 113

8.5 對象類型的轉換 115

8.5.1 向上轉型 115

8.5.2 向下轉型 116

8.6 instanceof判斷對象類型 117

8.7 綜合實例——簡單工廠模式應用 118

知識點提煉 119

習題 120

實驗:策略模式的應用 120

實驗目的 120

實驗內容 120

實驗步驟 120

第9章 類的高特 122

9.1 抽象類 122

9.2 內部類 124

9.2.1 成員內部類 124

9.2.2 局部內部類 127

9.2.3 匿名內部類 128

9.2.4 靜態內部類 129

9.3 Class類與Java反射 130

9.3.1 獲得Class類對象 130

9.3.2 獲得修飾符 131

9.3.3 訪問構造方法 131

9.3.4 訪問成員變量 133

9.3.5 訪問成員方法 134

9.4 使用註解功能 135

9.4.1 定義Annotation類型 135

9.4.2 訪問Annotation信息 137

9.5 綜合實例——自定義toString()方法 138

知識點提煉 139

習題 139

實驗:靜態內部類的應用 140

實驗目的 140

實驗內容 140

實驗步驟 140

第 10章 異常處理 142

10.1 異常概述 142

10.2 異常分類 143

10.2.1 可控式異常 143

10.2.2 運行時異常 144

10.3 獲取異常信息 144

10.4 處理異常 146

10.4.1 使用try-catch處理異常 146

10.4.2 使用try-catch-finally處理異常 146

10.4.3 使用try-finally處理異常 147

10.5 拋出異常 149

10.5.1 使用throws聲明拋出異常 149

10.5.2 使用throw語句拋出異常 150

10.6 自定義異常 151

10.6.1 創建自定義異常類 151

10.6.2 使用自定義異常類 152

10.7 異常的使用原則 153

10.8 綜合實例——空指針異常 153

知識點提煉 153

習題 154

實驗:自定義異常類 154

實驗目的 154

實驗內容 154

實驗步驟 154

第 11章 輸入/輸出 156

11.1 流概述 156

11.2 輸入輸出流 157

11.2.1 輸入流 157

11.2.2 輸出流 158

11.3 File類 159

11.3.1 文件的創建與刪除 160

11.3.2 獲取文件信息 161

11.4 文件輸入輸出流 162

11.4.1 FileInputStream類與FileOutputStream類 162

11.4.2 FileReader類和FileWriter類 164

11.5 帶緩存的輸入輸出流 165

11.5.1 BufferedInputStream類與BufferedOutputStream類 165

11.5.2 BufferedReader類與BufferedWriter類 166

11.6 數據輸入輸出流 166

11.7 ZIP壓縮輸入輸出流 169

11.7.1 壓縮文件 169

11.7.2 解壓縮ZIP文件 171

11.8 綜合實例——合並文本文件 172

知識點提煉 174

習題 174

實驗:刪除TMP文件 174

實驗目的 174

實驗內容 174

實驗步驟 175

第 12章 Swing程序設計 176

12.1 Swing概述 176

12.2 Swing常用窗體 177

12.2.1 JFrame框架窗體 177

12.2.2 JDialog窗體 178

12.3 常用佈局管理器 180

12.3.1 佈局 180

12.3.2 流佈局管理器 181

12.3.3 邊界佈局管理器 183

12.3.4 網格佈局管理器 184

12.4 常用面板 185

12.4.1 JPanel面板 185

12.4.2 JScrollPane面板 186

12.5 標簽組件與圖標 187

12.5.1 標簽的使用 187

12.5.2 圖標的使用 187

12.6 按鈕組件 190

12.6.1 提交按鈕組件 190

12.6.2 單選按鈕組件 191

12.6.3 復選框組件 193

12.7 列表組件 194

12.7.1 下拉列表框組件 194

12.7.2 列表框組件 196

12.8 文本組件 197

12.8.1 文本框組件 198

12.8.2 密碼框組件 199

12.8.3 文本域組件 199

12.9 綜合實例——簡單的每日提示信息 200

知識點提煉 202

習題 202

實驗:實現用戶註冊界面 203

實驗目的 203

實驗內容 203

實驗步驟 203

第 13章 事件處理 206

13.1 監聽事件簡介 206

13.2 鍵盤事件 206

13.3 鼠標事件 209

13.4 窗體事件 211

13.4.1 捕獲窗體焦點變化事件 211

13.4.2 捕獲窗體狀態變化事件 212

13.4.3 捕獲其他窗體事件 214

13.5 選項事件 215

13.6 綜合實例——模擬相機拍攝 217

知識點提煉 218

習題 219

實驗:簡易配對游戲 219

實驗目的 219

實驗內容 219

實驗步驟 219

第 14章 表格組件的應用 222

14.1 創建表格 222

14.1.1 創建表格 222

14.1.2 定製表格 225

14.2 維護表格模型 229

14.2.1 創建表格模型 229

14.2.2 設置表格模型 230

14.2.3 維護模型對象 231

14.3 創建行標題欄 235

14.4 表格模型事件監聽與處理 239

14.5 綜合實例——表格柵欄特效 244

知識點提煉 245

習題 246

實驗:表格分頁技術 246

實驗目的 246

實驗內容 246

實驗步驟 246

第 15章 樹組件的應用 250

15.1 創建樹組件 250

15.2 維護樹模型 253

15.2.1 創建模型對象 253

15.2.2 設置樹組件的模型 255

15.2.3 維護樹的模型 259

15.3 綜合實例——查看節點的各種狀態 263

知識點提煉 264

習題 264

實驗:自定義樹節點的外觀 264

實驗目的 264

實驗內容 265

實驗步驟 265

第 16章 多線程 268

16.1 線程簡介 268

16.2 實現線程的兩種方式 269

16.2.1 繼承Thread類 269

16.2.2 實現Runnable接口 271

16.3 線程的生命周期 273

16.4 操作線程的方法 274

16.4.1 線程的休眠 274

16.4.2 線程的加入 275

16.4.3 線程的中斷 277

16.4.4 線程的禮讓 278

16.5 線程的優先級 278

16.6 線程同步 280

16.6.1 線程安全 280

16.6.2 線程同步機制 281

16.7 線程間的通信 283

16.8 綜合實例——查看線程的運行狀態 285

知識點提煉 286

習題 287

實驗:簡單的線程死鎖 287

實驗目的 287

實驗內容 287

實驗步驟 287

第 17章 圖形繪制技術 289

17.1 繪制圖形 289

17.1.1 Graphics 289

17.1.2 Graphics2D 291

17.2 繪圖顏色與筆畫屬性 293

17.2.1 設置顏色 293

17.2.2 筆畫屬性 294

17.3 繪制文本 294

17.3.1 設置字體 295

17.3.2 顯示文字 295

17.4 圖片處理 296

17.4.1 繪制圖片 296

17.4.2 放大與縮小 297

17.4.3 圖片翻轉 299

17.4.4 圖片旋轉 302

17.4.5 圖片傾斜 304

17.5 綜合實例——繪制直方圖 305

知識點提煉 306

習題 306

實驗:繪制彩色字符串 307

實驗目的 307

實驗內容 307

實驗步驟 307

第 18章 常用工具類 308

18.1 日期時間類 308

18.1.1 創建Date類的對象 308

18.1.2 比較Date對象 309

18.1.3 更改Date對象 310

18.2 數學運算 311

18.2.1 Math類 311

18.2.2 Math類的數學方法 311

18.3 隨機數 315

18.3.1 通過Math類生成隨機數 316

18.3.2 使用Random類生成隨機數 318

18.4 數字格式化類 319

18.4.1 DecimalFormat類 319

18.4.2 數字的格式化輸出 320

18.5 綜合實例——簡單的數字時鐘 322

知識點提煉 323

習題 323

實驗:製作公歷萬年歷 323

實驗目的 323

實驗內容 323

實驗步驟 323

第 19章 數據庫編程應用 325

19.1 JDBC技術 325

19.1.1 數據庫概述 325

19.1.2 JDBC-ODBC技術介紹 326

19.1.3 JDBC技術 327

19.2 JDBC中常用的類和接口 327

19.2.1 DriverManager類 328

19.2.2 Connection接口 328

19.2.3 Statement接口 329

19.2.4 PreparedStatement接口 329

19.2.5 ResultSet接口 330

19.3 數據庫連接 330

19.3.1 加載數據庫驅動 331

19.3.2 創建數據庫連接 331

19.3.3 向數據庫發送SQL語句 335

19.3.4 獲取查詢結果集 335

19.3.5 關閉連接 336

19.4 綜合實例——向數據表中添加信息 336

知識點提煉 338

習題 339

實驗:使用批處理刪除數據 339

實驗目的 339

實驗內容 339

實驗步驟 339

第 20章 綜合案例——快遞打印系統 341

20.1 需求分析 341

20.2 總體設計 342

20.2.1 系統目標 342

20.2.2 構建開發環境 343

20.2.3 系統功能結構 343

20.3 數據庫設計 343

20.3.1 數據庫概要說明 343

20.3.2 數據庫E-R圖 343

20.3.3 數據表結構 344

20.4 公共類設計 345

20.4.1 公共類DAO 345

20.4.2 公共類SaveUserStateTool 345

20.5 程序主要系統開發 346

20.5.1 系統登錄系統設計 346

20.5.2 系統主界面系統設計 349

20.5.3 添加快遞信息系統設計 351

20.5.4 修改快遞信息系統設計 355

20.5.5 打印快遞單與打印設置系統設計 360

20.5.6 添加用戶窗體系統設計 365

20.5.7 修改用戶密碼窗體系統設計 367

20.6 程序打包與安裝 369

20.6.1 打包 369

20.6.2 安裝 370

第 21章 課程設計——軟件註冊程序 371

21.1 課程設計目的 371

21.2 功能描述 371

21.2.1 註冊導航功能 372

21.2.2 軟件註冊功能 372

21.2.3 軟件註冊機功能 372

21.3 總體設計 372

21.3.1 構建開發環境 372

21.3.2 業務流程圖 372

21.4 實現過程 373

21.4.1 註冊導航功能 373

21.4.2 軟件註冊功能 379

21.4.3 軟件註冊機功能 389

21.5 調試運行 390

21.6 課程設計總結 392

第 22章 課程設計——決策分析程序 393

22.1 課程設計目的 393

22.2 功能描述 393

22.2.1 導出為Excel文件功能 394

22.2.2 導出為PDF文件功能 394

22.2.3 分析數據並生成圖表 394

22.3 總體設計 394

22.3.1 構建開發環境 394

22.3.2 業務流程圖 394

22.4 實現過程 395

22.4.1 主窗體設計 395

22.4.2 導出為Excel文件功能 397

22.4.3 導出為PDF文件功能 400

22.4.4 繪制餅圖 403

22.4.5 繪制柱形圖 405

22.4.6 繪制折線圖 408

22.4.7 繪制區域圖 410

22.5 調試運行 411

22.6 課程設計總結 412