Java語言GUI程式設計

Java語言GUI程式設計

《Java語言GUI程式設計》是2018年11月清華大學出版社出版的圖書,作者是趙滿來。

基本介紹

  • 中文名:Java語言GUI程式設計
  • 作者:趙滿來
  • 出版社:清華大學出版社
  • 出版時間:2018年11月
  • 定價:89 元
  • ISBN:9787302503873
內容簡介,圖書目錄,

內容簡介

Java語言是近二十年來最為流行的通用面向對象程式設計語言,當今程式幾乎都採用圖形用戶界面(GUI)。本書以NetBeans IDE為開發工具,以Java語言基礎知識和基本語法、Java GUI程式的可視化設計方法、最新的Java SE 8和Java SE 9及Java SE 10等版本類庫中有關的實用類的使用為主要內容,介紹Java面向對象程式設計方法及套用型Java GUI程式設計方法。
全書所有例題和習題都採用GUI,將Java語言的基本知識和語言機制與圖形用戶界面的設計方法有機結合起來,讀者在學習Java語言的同時就能學會主流GUI程式的設計方法。本書從實用出發,強調利用現有類庫和組件設計解決實際問題的程式,採用優秀的開發環境NetBeans IDE以及可視化Java GUI設計方法,以降低學習難度,提高學習效率。通過學習本書,讀者可以較為輕鬆地掌握Java語言,快速具備完整的圖形用戶界面程式的設計開發能力。
本書適合作為套用型本科、專科、中職和高職類院校的文、理、醫、農及工科等類各專業學生的第一門程式設計課程教材,同時也適合具有國中以上文化基礎的編程愛好者自學。

圖書目錄

第1章 Java語言GUI程式設計概述 1
1.1 程式設計與程式設計語言概述 1
1.1.1 電腦程式設計的概念 1
1.1.2 程式設計語言的概念 2
1.1.3 程式設計語言的選擇 4
1.2 Java程式設計語言概述 6
1.2.1 Java程式設計語言的特點 6
1.2.2 Java平台 9
1.2.3 Java語言的套用 15
1.3 GUI程式簡述 17
1.3.1 GUI的基本組成 17
1.3.2 Java GUI程式的構成 21
1.4 開發環境 22
1.4.1 一般Java程式的開發步驟 22
1.4.2 Java程式集成開發環境簡介 23
1.4.3 NetBeans IDE的安裝 24
1.4.4 使用NetBeans IDE開發Java應用程式的步驟及界面 24
習題 26
第2章 快速設計簡單Java GUI程式,認識對象和類 27
2.1 快速設計簡單加法計算器程式 27
2.1.1 創建Java GUI項目 27
2.1.2 創建Java GUI程式視窗界面 28
2.1.3 設定Java GUI界面組件的屬性 30
2.1.4 設計事件處理代碼 31
2.2 初識Java程式和Java類 33
2.3 對象和類的初步知識 36
2.3.1 對象概述 36
2.3.2 類概述 36
2.3.3 類的組織 38
2.3.4 創建對象 39
2.4 Java GUI的可視化設計方法 40
2.4.1 NetBeans GUI構建器的界面 40
2.4.2 添加組件及GUI構建器的可視反饋功能 42
2.5 幾個簡單Swing GUI組件的設計 48
2.5.1 程式視窗 49
2.5.2 標籤組件的屬性 53
2.5.3 文本欄位的屬性 54
2.5.4 按鈕的設計 55
2.5.5 單選按鈕及按鈕組 57
2.5.6 套用示例 58
習題 61
第3章 Java語言的數據類型、運算符與流程控制 63
3.1 Java的關鍵字、數據類型、常量與變數 63
3.1.1 關鍵字 63
3.1.2 Java的基本數據類型 64
3.1.3 常量 65
3.1.4 變數 67
3.1.5 使用JShell練習 68
3.2 Java的運算符 70
3.2.1 變數賦值與賦值運算符 70
3.2.2 算術運算符 70
3.2.3 關係運算符 71
3.2.4 邏輯運算符 72
3.2.5 位運算符 73
3.2.6 其他運算符 75
3.3 表達式和語句 76
3.3.1 運算符按元數分類 76
3.3.2 運算符的結合性 76
3.3.3 運算符的優先權 77
3.3.4 類型轉換 77
3.3.5 語句 78
3.4 分支結構 80
3.4.1 if形式 80
3.4.2 if-else形式 83
3.4.3 if-else-if形式 85
3.4.4 if語句的嵌套 87
3.5 組合框的使用及四則運算計算程式設計 88
3.5.1 組合框 88
3.5.2 四則運算計算程式設計 89
3.6 多分支語句switch 91
3.7 循環結構 93
3.7.1 while語句 93
3.7.2 do-while語句 95
3.7.3 for語句 96
3.7.4 循環中的跳轉 100
3.7.5 遞歸方法 104
習題 106
第4章 Java面向對象程式設計 107
4.1 類的方法 107
4.1.1 方法的定義 107
4.1.2 方法的調用及參數傳遞 109
4.1.3 方法的重載 113
4.1.4 構造方法 116
4.2 類封裝與訪問控制 119
4.2.1 類封裝 119
4.2.2 訪問控制 120
4.2.3 static修飾符 121
4.3 類的繼承 122
4.3.1 繼承的概念 122
4.3.2 子類的創建 124
4.3.3 派生類對基類成員的訪問性 125
4.3.4 抽象方法與抽象類 127
4.3.5 子類的構造方法 131
4.3.6 方法的覆蓋與final方法及final類 133
4.4 多態性 133
4.4.1 向上轉型 134
4.4.2 方法綁定 134
4.4.3 多態性 134
4.5 接口 135
4.5.1 接口的概念 135
4.5.2 接口的定義 135
4.5.3 接口的實現與繼承 136
4.5.4 使用接口實現多態性及instanceof操作符 138
4.6 Java的內部類 139
4.6.1 實名非靜態內部類 139
4.6.2 靜態內部類 142
4.6.3 局部內部類 144
4.6.4 匿名內部類 146
4.7 Lambda表達式初步 147
4.7.1 Lambda表達式 147
4.7.2 函式式接口 149
4.7.3 方法引用 150
習題 152
第5章 Java GUI事件處理設計 154
5.1 Java GUI事件處理模型 154
5.1.1 事件的概念 154
5.1.2 Swing的事件處理機制——事件驅動 155
5.1.3 Swing的委託事件模型 157
5.1.4 Swing GUI事件處理步驟 158
5.2 事件處理的設計 159
5.2.1 匿名內部類實現事件監聽器 159
5.2.2 Lambda表達式實現監聽器接口 161
5.2.3 從事件適配器派生 164
5.2.4 實名內部監聽器類 165
5.2.5 獨立監聽器類 167
5.3 常用事件監聽器 167
5.3.1 滑鼠事件 168
5.3.2 鍵盤事件 171
5.3.3 焦點事件 172
5.3.4 組件屬性改變事件 173
5.3.5 Action事件 173
5.3.6 組件專用事件監聽器 174
5.3.7 事件及其監聽器小結 175
5.4 Java Bean構件設計初步 176
5.4.1 Java Bean的設計規範 176
5.4.2 使用NetBeans IDE開發Java Bean 178
5.4.3 將Bean添加到組件面板 180
5.4.4 在窗體或容器中添加自定義Bean組件 181
5.5 Swing組件的屬性綁定 181
5.5.1 標準組件間綁定 181
5.5.2 綁定定製Bean 182
5.5.3 屬性綁定實例 184
習題 187
第6章 數據集存儲與處理類 188
6.1 數組 188
6.1.1 定義及創建 188
6.1.2 數組初始化及元素引用 189
6.1.3 二維數組及多維數組 191
6.1.4 Arrays類與數組常用操作 193
6.2 字元串 196
6.2.1 String類 196
6.2.2 StringBuffer類和StringBuilder類 198
6.3 泛型與枚舉 198
6.3.1 泛型的定義和使用 198
6.3.2 類型通配符 202
6.3.3 受限類型參數 203
6.3.4 泛型使用的限制 206
6.3.5 枚舉 206
6.4 集合類 209
6.4.1 集合框架概述 209
6.4.2 有序集合List 212
6.4.3 無重複元素集合Set 216
6.4.4 映射表Map 219
6.4.5 視圖與Collections類 224
6.5 流及其數據集操作 229
6.5.1 流的概念及構成 229
6.5.2 流的來源與創建 230
6.5.3 中間操作 232
6.5.4 終結操作 234
習題 241
第7章 異常處理和檔案操作及I/O 243
7.1 異常處理 243
7.1.1 異常的概念及分類 243
7.1.2 拋出異常 244
7.1.3 捕獲異常 245
7.1.4 常見自定義異常 247
7.2 檔案與檔案選擇器 249
7.2.1 路徑與Path接口 249
7.2.2 檔案與File類 252
7.2.3 檔案選擇器 255
7.2.4 工具類Files 259
7.3 輸入輸出流 266
7.3.1 流的概念及類型 266
7.3.2 位元組流 266
7.3.3 字元流 268
7.4 位元組數據的讀寫 269
7.4.1 DataOutput接口與基本類型數據的輸出 269
7.4.2 DataInput接口與基本類型數據的輸入 272
7.4.3 對象流與序列化 273
7.5 文本輸入輸出流 277
7.5.1 輸出文本 278
7.5.2 讀入文本 282
7.6 通道式輸入輸出 283
7.6.1 NIO緩衝區 284
7.6.2 NIO通道 286
7.6.3 異步輸入輸出 289
習題 291
第8章 Swing GUI布局管理器及容器的使用 293
8.1 自由設計 293
8.1.1 概述 293
8.1.2 GUI構建器中的間距編輯 294
8.1.3 自由設計示例 296
8.2 格線式布局和格線包布局 297
8.2.1 格線式布局 297
8.2.2 格線包布局 301
8.2.3 格線包布局定製器的使用 302
8.3 Box布局 306
8.3.1 組件的最小、最大與首選尺寸 307
8.3.2 Box布局 307
8.3.3 組件alignmentX和alignmentY屬性與Box布局 308
8.4 其他布局管理器 309
8.4.1 流式布局 309
8.4.2 框線式布局 310
8.4.3 卡片式布局 311
8.4.4 疊加布局 312
8.5 填充器Swing Filler 314
8.5.1 接合 314
8.5.2 水平接合 316
8.5.3 垂直接合 316
8.5.4 水平Strut 316
8.5.5 垂直Strut 316
8.5.6 剛性區域 317
8.6 面板容器 318
8.6.1 面板的創建 318
8.6.2 屬性 319
8.6.3 套用舉例 319
8.7 滾動窗格 321
8.7.1 滾動窗格的創建 322
8.7.2 滾動窗格的主要屬性 322
8.7.3 套用舉例 322
8.7.4 文本區域 324
8.8 拆分窗格 324
8.8.1 使用方法 324
8.8.2 屬性 325
8.8.3 列表組件JList 326
8.8.4 套用舉例 328
8.9 標籤化窗格 331
8.9.1 標籤化窗格的組成及使用 332
8.9.2 屬性 333
8.9.3 設計舉例 335
8.10 工具列 336
習題 338
第9章 Java資料庫程式設計基礎 340
9.1 Java DB資料庫概述 340
9.1.1 Java DB概述 340
9.1.2 關係資料庫概念 341
9.1.3 Java DB的SQL數據類型 343
9.2 NetBeans IDE的資料庫操作 344
9.2.1 配置及啟動Java DB資料庫管理系統 344
9.2.2 創建資料庫 345
9.2.3 設定與建立資料庫連線 345
9.2.4 創建表 345
9.3 表數據的插入、更新和刪除 349
9.3.1 插入數據 349
9.3.2 刪除數據 351
9.3.3 更新數據 352
9.3.4 修改表模式 353
9.4 資料庫查詢 353
9.4.1 SELECT語句語法 354
9.4.2 連線表及子查詢 355
9.4.3 排序行 357
9.4.4 查詢中的計算與數學函式 357
9.4.5 對結果進行分組 361
9.4.6 視圖 361
9.4.7 用索引加速 363
9.5 JDBC 364
9.5.1 載入驅動資料庫程式 365
9.5.2 連線資料庫 366
9.5.3 執行SQL語句 369
9.5.4 使用PreparedStatement注入數據 371
9.5.5 釋放資源 373
9.6 查詢結果集及其數據的動態修改 373
9.6.1 SQL游標 374
9.6.2 訪問欄位 375
9.6.3 更新結果集 375
9.6.4 訪問資料庫元數據 377
9.7 註解 379
9.7.1 註解的基本知識 379
9.7.2 基本內置註解 380
9.8 實體類及DAO 382
9.8.1 對象-關係映射與實體類的設計 382
9.8.2 設計DAO封裝資料庫邏輯 385
習題 388
第10章 Swing控制項的使用 390
10.1 表格控制項的使用 390
10.1.1 使用資料庫快速創建表格 390
10.1.2 表格組件的創建 391
10.1.3 為現有的表格組件綁定資料庫表 393
10.1.4 表格數據模型 394
10.1.5 表格組件的屬性 398
10.2 數值輸入控制項 400
10.2.1 格式化欄位 400
10.2.2 滑塊 402
10.2.3 進度欄 404
10.2.4 微調器 405
10.3 選擇控制項 406
10.3.1 開啟/關閉按鈕 406
10.3.2 複選框 408
10.3.3 組合框 408
10.3.4 列表 412
10.4 樹組件的設計與使用 416
10.4.1 創建樹 416
10.4.2 樹節點 418
10.4.3 樹模型 419
10.4.4 樹組件的屬性設定 421
10.4.5 樹路徑及節點選擇事件 422
10.4.6 節點繪製 425
10.5 綜合示例 429
10.5.1 項目需求簡析 429
10.5.2 系統設計 429
10.5.3 程式實現 430
10.5.4 Java GUI應用程式部署 444
習題 445
第11章 Swing選單設計及對話框使用 447
11.1 選單欄及選單 447
11.1.1 選單欄 447
11.1.2 選單的創建 448
11.1.3 選單的屬性 448
11.2 選單項 449
11.2.1 選單項的設計與使用 449
11.2.2 複選框選單項 450
11.2.3 單選按鈕選單項 451
11.2.4 分隔設定 452
11.3 選單設計示例 452
11.3.1 題目 452
11.3.2 分析 453
11.3.3 設計步驟 453
11.4 Action接口的使用 459
11.4.1 Action接口及其實現 459
11.4.2 使用Action 460
11.5 彈出式選單 465
11.5.1 彈出式選單的設計 465
11.5.2 套用舉例 466
11.6 對話框 469
11.6.1 對話框的使用 469
11.6.2 套用示例 471
11.7 選項窗格 472
11.7.1 選項窗格概述 472
11.7.2 4種典型的選項窗格 473
11.7.3 選項窗格的使用方法 474
11.8 顏色選擇器的使用 476
11.8.1 創建顏色選擇器組件 477
11.8.2 通過工廠方法使用顏色選擇器 478
11.9 桌面系統托盤 479
11.9.1 系統托盤的獲取 480
11.9.2 系統托盤項的設計 481
11.9.3 系統托盤的事件處理 483
11.9.4 套用舉例 483
習題 485
第12章 多執行緒並發與SwingWorker 487
12.1 Java執行緒的創建 487
12.1.1 Runnable接口封裝任務 487
12.1.2 創建與啟動執行緒 488
12.1.3 只在Swing事件派發執行緒更新界面 489
12.1.4 用Callable與Future接口創建和使用執行緒 490
12.2 執行緒的生命周期及屬性 493
12.2.1 枚舉執行緒的狀態 494
12.2.2 執行緒的各種狀態及其轉換 494
12.2.3 執行緒的屬性 495
12.3 多執行緒的同步控制 496
12.3.1 多執行緒共享資源與同步 496
12.3.2 同步代碼塊與同步方法 499
12.3.3 多執行緒協作的同步控制 502
12.3.4 死鎖 505
12.4 Java多執行緒並發程式設計一瞥 506
12.4.1 執行器與執行緒池 506
12.4.2 Fork-Join框架 510
12.4.3 阻塞佇列及執行緒安全的集合 513
12.4.4 標準庫中的同步輔助類 519
12.4.5 流的同步與回響式流 527
12.5 SwingWorker類與GUI程式的任務執行緒 529
12.5.1 正確使用事件派發執行緒 529
12.5.2 SwingWorker類 530
12.5.3 SwingWorker類的使用 532
習題 534

相關詞條

熱門詞條

聯絡我們