Java面向對象程序設計(微課視頻版)
吳紹根、吳邊
相關主題
商品描述
目錄大綱
目 錄
第1 章建立Java 程序開發環境
1
1.1 Java 語言概述
1
1.1.1 程序設計語言
1
1.1.2 Java 語言的特點
1
1.2 建立Java 開發環境
2
1.3 第一個“Hello world!”程序
2
1.3.1 創建Java 程序工程
2
1.3.2 運行Java 程序
5
1.4 Java 程序的運行過程
6
1.4.1 編譯代碼
7
1.4.2 Java 程序的運行機理
8
1.5 練習:安裝Java 開發環境.
9
第2 章 Java 基本運算和輸入/ 輸出 10
2.1 Java 程序的組成10
2.2 Java 基本數據類型和字面常量11
2.3 變量11
2.3.1 定義變量和訪問變量 .12
2.3.2 顯示變量的值 .12
2.4 數據運算13
2.5 Java 基本輸入/ 輸出和String 類的使用13
2.5.1 基本輸出語句 .14
2.5.2 基本輸入語句 .16
2.5.3 String 類的使用 .17
2.6 練習:計算工資.18
第3 章 Java 程序流程控制19
3.1 順序語句和if 分支語句19
3.2 switchcase default 分支語句及其應用實踐19
3.3 循環語句21
3.4 數組21
3.4.1 定義數組 22
Jsczw.indd 3
2024/9/13 14:29:26
3.4.2 訪問數組元素 .22
3.4.3 使用for each 遍歷數組元素 23
3.4.4 二維數組 24
3.5 switch 表達式和yield 關鍵字的使用26
3.6 函數及其調用.27
3.7 案例:學生成績計算系統29
3.7.1 案例任務 29
3.7.2 任務分析 29
3.7.3 任務實施 30
3.8 練習:計算質數及其和.30
第4 章類和對象31
4.1 定義類和創建對象31
4.1.1 類的含義 31
4.1.2 定義類 .32
4.1.3 在IDEA 中創建Java 類34
4.1.4 創建及使用對象 37
4.2 構造函數41
4.2.1 類的構造函數 .41
4.2.2 構造函數重載 .43
4.3 類的靜態屬性、靜態方法和靜態代碼塊 45
4.3.1 靜態屬性 46
4.3.2 靜態方法 48
4.3.3 靜態代碼塊 49
4.3.4 靜態屬性、靜態方法和靜態代碼塊應用實踐 51
4.4 內部類 .51
4.4.1 成員內部類 51
4.4.2 靜態內部類 54
4.4.3 使用內部類應用實踐 .56
4.5 案例:使用Java 類描述一元二次方程56
4.5.1 案例任務 56
4.5.2 任務分析 56
4.5.3 任務實施 56
4.6 練習:計算三角形的面積和周長58
第5 章繼承和多態.59
5.1 類的繼承59
5.1.1 繼承的概念 59
5.1.2 定義類的繼承關系 60
IV
Jsczw.indd 4
2024/9/13 14:29:26
5.1.3 super 關鍵字及方法重寫64
5.1.4 練習:完成Teacher 子類和Worker 子類的代碼編寫 66
5.2 訪問限定符 66
5.2.1 訪問限定符及其可訪問性 66
5.2.2 訪問限定符使用舉例 .67
5.3 抽象類和多態.67
5.3.1 抽象類和使用final
關鍵字修飾屬性 67
5.3.2 多態 71
5.3.3 使用instanceof 關鍵字檢查對象類型72
5.3.4 對象數組 73
5.4 使用final、record 和sealed 關鍵字修飾類76
5.4.1 使用final
關鍵字修飾類 76
5.4.2 使用record 關鍵字定義Java 類76
5.4.3 使用sealed 關鍵字修飾類 78
5.5 案例:定義Java 程序類應用實踐78
5.5.1 案例任務 78
5.5.2 任務分析 78
5.5.3 任務實施 79
5.6 練習:打印自定義圖形形狀82
第6 章接口.83
6.1 接口及其應用.83
6.1.1 定義接口 84
6.1.2 實現接口 85
6.1.3 使用接口及instanceof 關鍵字在接口中的應用.87
6.1.4 接口的繼承 89
6.2 接口的默認方法、靜態方法和私有方法 90
6.3 函數式接口和lambda 表達式 93
6.3.1 函數式接口 93
6.3.2 使用匿名內部類實現接口 94
6.3.3 lambda 入門:使用lambda 表達式實現函數式接口95
6.3.4 lambda 表達式基本語法 96
6.3.5 接口方法引用 .97
6.4 接口、匿名內部類和lambda 表達式應用實踐 .97
6.5 案例:按價格排序不同產品97
6.5.1 案例任務 98
6.5.2 任務分析 98
6.5.3 任務實施 98
6.6 練習:計算空間中兩點的距離103
V
Jsczw.indd 5
2024/9/13 14:29:26
第7 章枚舉類型104
7.1 枚舉類型入門:一個表示四季的枚舉類型104
7.2 枚舉類型進階106
7.3 枚舉類型應用實踐108
7.4 案例:員工Staff 類 109
7.4.1 案例任務 .110
7.4.2 任務分析 .110
7.4.3 任務實施 .110
7.5 練習:水果的成熟季節 111
第8 章 Java 基礎類的使用.112
8.1 Java 基本類112
8.1.1 Object 類112
8.1.2 基本數據類型的包裝類 .113
8.1.3 大數據類 .114
8.1.4 System 類 115
8.1.5 Math 類.116
8.2 字符串類.116
8.2.1 String 類 117
8.2.2 StringBuffer 類 .117
8.3 隨機數生成器類 .119
8.3.1 Random 類119
8.3.2 使用RandomGenerator 接口生成隨機數.120
8.4 日期時間類 121
8.4.1 Date 類121
8.4.2 Calendar 類.121
8.4.3 SimpleDateFormat 類122
8.5 使用Java 基礎類應用實踐124
8.6 案例:猜數游戲124
8.6.1 案例任務 .124
8.6.2 任務分析 .124
8.6.3 任務實施 .124
8.7 練習:計算閏年126
第9 章 Java 程序異常及程序調試技術127
9.1 程序錯誤分類127
9.2 Java 程序異常及其處理入門127
9.2.1 Java 程序異常現象舉例 .127
9.2.2 Java 異常處理入門 129
VI
Jsczw.indd 6
2024/9/13 14:29:27
9.3 Java 程序異常及其處理進階131
9.3.1 Error 類.132
9.3.2 Exception 類 133
9.3.3 非檢查性異常 133
9.3.4 檢查性異常 133
9.3.5 Java 異常處理 135
9.3.6 自定義異常 135
9.4 案例:處理程序異常136
9.4.1 案例任務 .136
9.4.2 任務分析 .136
9.4.3 任務實施 .137
9.5 在IDEA 中調試Java 程序 140
9.6 Java 異常及程序調試應用實踐.142
9.7 練習:將從鍵盤輸入的字符串轉換為浮點數142
第10 章集合類及流式編程143
10.1 泛型 .143
10.1.1 泛型入門 143
10.1.2 泛型類 .145
10.1.3 泛型方法 146
10.1.4 泛型接口 147
10.1.5 泛型類型限制和泛型通配符“?”150
10.2 集合類150
10.2.1 集合類主要接口和類之間的關系 150
10.2.2 List 接口及其實現類的使用 151
10.2.3 Set 接口及其實現類的使用 154
10.2.4 Map 接口及其實現類的使用.158
10.2.5 數組工具類Arrays 的使用 .160
10.3 Java 流式編程161
10.3.1 Java 常用函數式接口及其使用 161
10.3.2 Optional 類及泛型通配符“?”使用舉例164
10.3.3 流式編程入門 .168
10.3.4 創建Stream 和操作Stream.170
10.4 Java 數組、集合類及流式編程應用實踐.170
10.5 案例:自製詞典171
10.5.1 案例任務 171
10.5.2 任務分析 171
10.5.3 任務實施 171
10.6 練習:使用流式編程查詢學生信息.172
VII
Jsczw.indd 7
2024/9/13 14:29:27
第11 章文件輸入/ 輸出操作173
11.1 文件基本操作 173
11.1.1 使用File 類操作文件屬性 173
11.1.2 使用Files 類操作文件屬性及讀/ 寫文件內容175
11.1.3 使用WatchService 監視目錄和文件變化 175
11.2 字節流讀/ 寫 .175
11.2.1 字節流的含義 .175
11.2.2 讀/ 寫文件字節流 176
11.2.3 使用try-with-resource 處理異常和關閉資源178
11.2.4 讀/ 寫內存字節流 180
11.3 字符流讀/ 寫 .181
11.3.1 字符編碼和字符解碼 .182
11.3.2 無緩沖字符流讀/ 寫 184
11.3.3 帶緩沖字符流讀/ 寫 186
11.4 對象數據讀/ 寫 188
11.5 Java 流操作應用實踐 190
11.6 案例:通訊錄程序190
11.6.1 案例任務 190
11.6.2 任務分析 191
11.6.3 任務實施 191
11.7 練習:自製工資管理程序195
第12 章 Java 反射和註解196
12.1 Java 反射196
12.1.1 反射概念的引入 196
12.1.2 反射的核心——Class 類197
12.1.3 通過反射獲取類的構造方法、屬性和普通方法 199
12.2 Java 註解202
12.2.1 Java 標準註解 .202
12.2.2 自定義註解 202
12.3 Java 反射與註解應用實踐.206
12.4 案例:自動註入對象.207
12.4.1 案例任務 207
12.4.2 任務分析 207
12.4.3 任務實施 207
12.5 練習:自動註入Teacher 對象 .210
第13 章多線程211
13.1 Java 多線程入門211
VIII
Jsczw.indd 8
2024/9/13 14:29:27
13.2 Thread 類及創建子線程214
13.2.1 通過繼承Thread 類創建線程215
13.2.2 通過實現Runnable 接口創建線程.215
13.2.3 使用FutureTask 創建線程 218
13.3 線程狀態、線程調度和線程優先級221
13.4 線程並發控制 222
13.4.1 多線程中數據的不一致性現象舉例 .222
13.4.2 使用synchronized 控制線程並發225
13.4.3 使用原子類型變量控制線程並發 227
13.4.4 使用Lock 接口控制線程並發 229
13.5 線程同步控制及生產者—消費者模型 229
13.6 線程池229
13.6.1 Java 線程池框架 230
13.6.2 線程池使用舉例 231
13.6.3 多例多線程和單例多線程及ThreadLocal 類的使用234
13.7 Java 線程應用實踐.237
13.8 案例:找出小於1000 的所有質數和水仙花數.238
13.8.1 案例任務 238
13.8.2 任務分析 238
13.8.3 任務實施 238
13.9 練習:統計上網人數.241
第14 章網絡編程.242
14.1 網絡通信協議 242
14.1.1 IP 地址InetAddress 類和埠 242
14.1.2 UDP 和TCP .244
14.2 使用UDP 進行通信 244
14.2.1 DatagramSocket 類和DatagramPacket 類 244
14.2.2 UDP 點對點通信程序舉例 .245
14.3 使用TCP 進行通信249
14.3.1 客戶/ 服務器模式 249
14.3.2 ServerSocket 類和Socket 類 249
14.3.3 TCP 通信程序舉例 250
14.4 使用HTTP 訪問網絡頁面.254
14.4.1 Java 對HTTP 的實現概述 254
14.4.2 使用HttpClient 訪問網絡頁面.256
14.5 Java 網絡編程應用實踐257
14.6 案例:聊天程序258
14.6.1 案例任務 258
IX
Jsczw.indd 9
2024/9/13 14:29:27
14.6.2 任務分析 258
14.6.3 任務實施 258
14.7 練習:完善聊天程序Chatter 類的代碼.263
第15 章使用JDBC 訪問數據庫 264
15.1 JDBC 概述 264
15.2 加載數據庫驅動程序265
15.3 JDBC 接口訪問數據庫的核心類和核心接口 266
15.3.1 DriverManager 類註冊數據庫驅動程序266
15.3.2 Connection 接口建立與數據庫的連接.267
15.3.3 Statement 接口執行SQL 語句268
15.3.4 PreparedStatement 接口執行參數化SQL 語句269
15.3.5 ResultSet 接口處理查詢結果.270
15.4 案例:實現對book 表的增刪改查271
15.4.1 案例任務 271
15.4.2 任務分析 271
15.4.3 任務實施 271
15.5 JDBC 應用實踐 278
15.6 練習:完成案例程序的刪改查功能.278
第16 章 Java 圖形用戶界面279
16.1 Swing 概述279
16.2 容器組件 279
16.2.1 JFrame 頂級窗口容器.279
16.2.2 JPanel 面板容器.281
16.3 佈局管理器.283
16.3.1 FlowLayout 佈局283
16.3.2 GridLayout 佈局.285
16.3.3 BorderLayout 佈局286
16.4 Swing 常用組件288
16.5 Swing 事件處理290
16.6 Java 圖形界面應用程序開發實踐.293
16.7 案例:圖像混合器293
16.7.1 案例任務 293
16.7.2 任務分析 293
16.7.3 任務實施 294
16.8 練習:圖形界面聊天程序297
參考文獻.298