Java應(yīng)用與實(shí)戰(zhàn)
定 價(jià):79.8 元
叢書名:程序員寶典系列
- 作者:劉磊 等
- 出版時(shí)間:2023/4/1
- ISBN:9787121452970
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP312.8
- 頁(yè)碼:508
- 紙張:
- 版次:01
- 開本:16開
本書基于Java的長(zhǎng)期支持版本(Java?11)系統(tǒng)地講解Java的核心語法,內(nèi)容全面,深入淺出,貫穿了大量實(shí)例。本書詳細(xì)講解了Java及面向?qū)ο缶幊袒A(chǔ)、圖形用戶界面的編程方法、基礎(chǔ)類和工具類的使用方法、泛型與集合框架、Java?I/O技術(shù)、JDBC編程技術(shù)、多線程機(jī)制、網(wǎng)絡(luò)編程技術(shù)等實(shí)用內(nèi)容。本書強(qiáng)調(diào)理論與應(yīng)用相結(jié)合,自第2章開始,每章的最后一節(jié)均為編程實(shí)訓(xùn),應(yīng)用該章涉及的內(nèi)容完成相應(yīng)的實(shí)訓(xùn)案例。第2~3章逐步完成氣泡案例,第4~13章逐步完成飛機(jī)大戰(zhàn)案例。本書適合計(jì)算機(jī)相關(guān)專業(yè)的本科生、?粕约坝(jì)算機(jī)初學(xué)者閱讀,既可以作為應(yīng)用型本科院校和高等職業(yè)院校Java基礎(chǔ)課程的教材,又可以作為相關(guān)領(lǐng)域從業(yè)者的學(xué)習(xí)和參考用書。
本書由達(dá)內(nèi)時(shí)代科技集團(tuán)和吉林工商學(xué)院的各位專家教授聯(lián)合編著。達(dá)內(nèi)時(shí)代科技集團(tuán)是國(guó)內(nèi)知名的互聯(lián)網(wǎng)-IT教育培訓(xùn)單位,是一站式互聯(lián)網(wǎng)人才基地,專注IT職業(yè)教育人才服務(wù)多年,擁有300多家培訓(xùn)中心,幫助學(xué)員實(shí)現(xiàn)一地學(xué)習(xí)全國(guó)就業(yè)。是一所經(jīng)教育部批準(zhǔn)設(shè)立的以本科教育為主、?平逃秊檩o的財(cái)經(jīng)性應(yīng)用型本科院校,入選吉林省首批應(yīng)用型試點(diǎn)本科院校,具備聯(lián)合培養(yǎng)碩士研究生資格。劉磊為吉林工商學(xué)院教師。
目 錄
第 1 章 Java 語言概述 1
1.1 Java 的發(fā)展歷程 1
1.2 Java 的特點(diǎn) 2
1.3 Java 技術(shù)三大平臺(tái) 4
1.3.1 Java SE 5
1.3.2 Java EE 5
1.3.3 Java ME 5
1.4 Java 虛擬機(jī) 5
1.5 Java 開發(fā)環(huán)境的構(gòu)建 6
1.5.1 選擇合適的 JDK 版本 6
1.5.2 下載和安裝 JDK 7
1.5.3 IntelliJ IDEA 開發(fā)工具 12
1.6 第一個(gè) Java 程序 14
1.6.1 使用文本編輯工具實(shí)現(xiàn) 15
1.6.2 使用 IntelliJ IDEA 實(shí)現(xiàn) 16
本章小結(jié) 19
習(xí)題 19
第 2 章 Java 語言基礎(chǔ) 22
2.1 標(biāo)識(shí)符、關(guān)鍵字和保留字 22
2.1.1 標(biāo)識(shí)符 22
2.1.2 關(guān)鍵字和保留字 23
2.2 變量 24
2.3 基本數(shù)據(jù)類型 26
2.3.1 數(shù)據(jù)類型的分類 26
2.3.2 整數(shù)類型 27
2.3.3 浮點(diǎn)類型 28
2.3.4 字符類型 29
2.3.5 布爾類型 30
2.3.6 數(shù)據(jù)類型轉(zhuǎn)換 31
2.3.7 字符串類型 33
2.4 運(yùn)算符與表達(dá)式 33
2.4.1 算術(shù)運(yùn)算符與算術(shù)表達(dá)式 34
2.4.2 關(guān)系運(yùn)算符與關(guān)系表達(dá)式 36
2.4.3 邏輯運(yùn)算符與邏輯表達(dá)式 36
2.4.4 賦值運(yùn)算符與賦值表達(dá)式 38
2.4.5 條件運(yùn)算符與條件表達(dá)式 39
2.4.6 運(yùn)算符的結(jié)合性和優(yōu)先級(jí) 40
2.5 流程控制語句 41
2.5.1 順序結(jié)構(gòu) 41
2.5.2 分支結(jié)構(gòu) 41
2.5.3 循環(huán)結(jié)構(gòu) 46
2.5.4 中斷和跳轉(zhuǎn) 49
2.6 數(shù)組 51
2.6.1 一維數(shù)組 52
2.6.2 二維數(shù)組 56
2.7 編程實(shí)訓(xùn)——?dú)馀莅咐S機(jī) 控制氣泡) 58
本章小結(jié) 64
習(xí)題 64
第 3 章 面向?qū)ο缶幊袒A(chǔ) 68
3.1 面向?qū)ο缶幊痰乃枷?68
3.1.1 面向?qū)ο蠛?jiǎn)介 69
3.1.2 面向?qū)ο蟮奶卣?69
3.1.3 類與對(duì)象的關(guān)系 70
3.2 類 70
3.2.1 定義類的語法格式 70
3.2.2 成員變量 71
3.2.3 成員方法 72
3.3 對(duì)象 74
3.3.1 創(chuàng)建對(duì)象 74
3.3.2 使用對(duì)象 75
3.4 引用類型與垃圾回收 76
3.4.1 引用類型與引用類型變量 76
3.4.2 垃圾回收 77
3.5 方法的重載 77
3.6 構(gòu)造方法 78
3.6.1 使用構(gòu)造方法 78
3.6.2 有參構(gòu)造方法 79
3.6.3 默認(rèn)構(gòu)造器與構(gòu)造器重載 80
3.6.4 關(guān)鍵字 this 80
3.7 實(shí)例成員與類成員 83
3.7.1 實(shí)例變量和類變量 83
3.7.2 實(shí)例方法和類方法 84
3.8 方法的參數(shù)傳遞機(jī)制 85
3.8.1 基本數(shù)據(jù)類型參數(shù)的傳值 85
3.8.2 引用類型參數(shù)的傳值 86
3.8.3 可變參數(shù) 87
3.9 包 88
3.9.1 包的定義 89
3.9.2 包的引入 89
3.9.3 常用的包 90
3.10 封裝和訪問控制 91
3.11 編程實(shí)訓(xùn)——?dú)馀莅咐?(氣泡吞噬) 94
本章小結(jié) 102
習(xí)題 103
第 4 章 Java GUI 編程技術(shù) 107
4.1 AWT 和 Swing 簡(jiǎn)介 107
4.1.1 AWT 概述 108
4.1.2 Swing 概述 108
4.1.3 Swing 組件的層次結(jié)構(gòu) 108
4.1.4 Swing 編程的流程 109
4.2 Swing 常用的容器類組件 110
4.2.1 JFrame 類 110
4.2.2 JDialog 類 112
4.2.3 JPanel 類和JScrollPane 類 113
4.3 Swing 常用的基本組件 116
4.3.1 標(biāo)簽組件 117
4.3.2 按鈕組件 118
4.3.3 文本組件 122
4.3.4 下拉框組件 126
4.3.5 列表框組件 127
4.3.6 菜單組件 128
4.3.7 表格組件 130
4.3.8 樹組件 131
4.4 布局管理器 132
4.4.1 FlowLayout 132
4.4.2 BorderLayout 133
4.4.3 GridLayout 135
4.4.4 GridBagLayout 136
4.4.5 CardLayout 137
4.4.6 BoxLayout 137
4.4.7 空布局 138
4.5 事件處理 138
4.5.1 事件處理機(jī)制 138
4.5.2 Swing 常用事件處理 140
4.5.3 事件適配器 154
4.5.4 事件監(jiān)聽器的實(shí)現(xiàn)方式 156
4.6 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (實(shí)現(xiàn)游戲背景連續(xù)播放) 159
本章小結(jié) 166
習(xí)題 166
第 5 章 繼承與多態(tài) 170
5.1 類的繼承 170
5.1.1 子類與父類 171
5.1.2 子類的繼承性 172
5.1.3 子類與對(duì)象 173
5.2 成員變量的隱藏和方法重寫 174
5.3 關(guān)鍵字 super 176
5.4 關(guān)鍵字 final 180
5.5 多態(tài) 183
5.6 對(duì)象的向上類型轉(zhuǎn)換 184
5.7 虛擬方法調(diào)用 187
5.8 抽象方法和抽象類 187
5.8.1 抽象方法 187
5.8.2 抽象類 188
5.8.3 面向抽象編程 189
5.9 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (實(shí)現(xiàn)英雄機(jī)移動(dòng)) 190
本章小結(jié) 196
習(xí)題 196
第 6 章 異常機(jī)制 198
6.1 Java 的異常機(jī)制 198
6.2 Java 的異常的分類 199
6.3 異常的常用方法 200
6.4 Java 的異常的處理 202
6.4.1 產(chǎn)生異常的原因 202
6.4.2 捕獲并處理異常 203
6.4.3 聲明和拋出異常 205
6.5 自定義異常 207
6.6 斷言 209
6.6.1 Java 斷言的語法 210
6.6.2 在 IDEA 中開啟斷言 211
6.6.3 不適合使用斷言的場(chǎng)景 213
6.7 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (添加子彈,處理游戲 Bug) 213
本章小結(jié) 220
習(xí)題 221
第 7 章 接口與實(shí)現(xiàn) 223
7.1 接口 223
7.2 實(shí)現(xiàn)接口 224
7.3 接口回調(diào) 226
7.4 接口與多態(tài) 227
7.5 類與接口 228
7.5.1 抽象類與接口 228
7.5.2 內(nèi)部類 230
7.5.3 匿名類與接口 231
7.6 函數(shù)接口與 Lambda 表達(dá)式 232
7.7 面向接口編程 234
7.8 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (實(shí)現(xiàn)子彈消滅敵機(jī)) 234
本章小結(jié) 246
習(xí)題 246
第 8 章 基礎(chǔ)類和工具類 248
8.1 基礎(chǔ)類 248
8.1.1 Object 類 249
8.1.2 包裝類 253
8.1.3 String 類 257
8.2 工具類 266
8.2.1 數(shù)學(xué)類 266
8.2.2 Random 類和SecureRandom 類 268
8.2.3 日期時(shí)間類 271
8.3 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (隨機(jī)出現(xiàn)敵機(jī), 英雄機(jī)死亡) 278
本章小結(jié) 284
習(xí)題 285
第 9 章 泛型與集合框架 287
9.1 泛型概述 287
9.1.1 泛型的定義 287
9.1.2 泛型類的定義 288
9.1.3 泛型接口的定義 291
9.1.4 泛型方法的定義 291
9.2 集合概述 292
9.2.1 集合框架的層次結(jié)構(gòu) 292
9.2.2 迭代器接口 294
9.3 List 集合 295
9.3.1 List 接口 295
9.3.2 ArrayList 集合 295
9.3.3 LinkedList 集合 297
9.4 Set 集合 300
9.4.1 Set 接口 300
9.4.2 HashSet 類 300
9.4.3 TreeSet 類 304
9.5 Map 集合 307
9.5.1 Map 接口 307
9.5.2 HashMap 類 308
9.5.3 TreeMap 類 311
9.6 遍歷集合的方法 313
9.7 集合轉(zhuǎn)換 314
9.8 集合工具類 316
9.8.1 Collections 工具類 316
9.8.2 Arrays 工具類 318
9.9 開發(fā)過程中如何選擇集合 實(shí)現(xiàn)類 320
9.10 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (添加獎(jiǎng)勵(lì)機(jī),顯示戰(zhàn)績(jī)) 320
本章小結(jié) 328
習(xí)題 328
第 10 章 Java I/O 技術(shù) 332
10.1 文件操作類:File 類 332
10.1.1 File 類常用的方法 332
10.1.2 遍歷目錄下的文件 336
10.1.3 刪除文件及目錄 337
10.1.4 運(yùn)行可執(zhí)行文件 339
10.2 輸入/輸出流概述 340
10.2.1 輸入/輸出流的原理 340
10.2.2 輸入/輸出流的分類 341
10.3 字節(jié)流 344
10.3.1 InputStream 抽象類 344
10.3.2 OutputStream 抽象類 345
10.3.3 FileInputStream 類和 FileOutputStream 類 345
10.3.4 BufferedInputStream 類和 BufferedOutputStream 類 348
10.3.5 DataInputStream 類和 DataOutputStream 類 351
10.3.6 對(duì)象流和序列化 353
10.4 字符流 355
10.4.1 Reader 類和 Writer 類 355
10.4.2 InputStreamReader 類和 OutputStreamWriter 類 356
10.4.3 FileReader 類和 FileWriter 類 358
10.4.4 BufferedReader 類和 BufferedWriter 類 359
10.5 RandomAccessFile 類 361
10.6 PrintStream 類和 PrintWriter 類 363
10.7 數(shù)組流 365
10.8 文件鎖 367
10.9 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (顯示最高得分) 369
本章小結(jié) 374
習(xí)題 374
第 11 章 JDBC 編程技術(shù) 378
11.1 數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)管理工具 378
11.1.1 數(shù)據(jù)庫(kù)的基礎(chǔ)知識(shí) 378
11.1.2 數(shù)據(jù)庫(kù)管理工具 379
11.1.3 SQL 語句的基礎(chǔ)知識(shí) 380
11.2 JDBC 編程規(guī)范 383
11.2.1 JDBC 概述 384
11.2.2 JDBC 的編程步驟 384
11.2.3 JDBC 常用 API 393
11.3 預(yù)編譯機(jī)制 397
11.3.1 預(yù)編譯語句概述 397
11.3.2 預(yù)編譯語句的使用 398
11.3.3 SQL 注入的原理與預(yù)防 404
11.4 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (游戲數(shù)據(jù)存入數(shù)據(jù)庫(kù)中) 405
本章小結(jié) 411
習(xí)題 412
第 12 章 Java 多線程機(jī)制 413
12.1 線程的定義 413
12.1.1 進(jìn)程 413
12.1.2 線程 414
12.2 線程的創(chuàng)建 415
12.2.1 Java 主線程 415
12.2.2 創(chuàng)建線程——繼承 Thread 類 416
12.2.3 創(chuàng)建線程——實(shí)現(xiàn) Runnable 接口 418
12.2.4 創(chuàng)建線程——Callable接口和 Future 接口 420
12.2.5 創(chuàng)建線程的 3 種方式的對(duì)比 421
12.3 線程的狀態(tài)控制 422
12.3.1 線程的生命周期 422
12.3.2 線程的狀態(tài)轉(zhuǎn)換 423
12.3.3 線程的操作 423
12.3.4 線程的優(yōu)先級(jí) 429
12.3.5 后臺(tái)線程 430
12.4 線程的同步和互斥 433
12.4.1 線程安全 433
12.4.2 線程互斥 435
12.4.3 線程同步 438
12.4.4 線程通信 440
12.4.5 線程死鎖 447
12.5 并發(fā)工具包 451
12.5.1 并發(fā)工具包概述 451
12.5.2 并發(fā)工具包常用的工具類和接口 452
12.6 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (添加游戲音樂) 461
本章小結(jié) 466
習(xí)題 466
第 13 章 Java 網(wǎng)絡(luò)編程技術(shù) 468
13.1 計(jì)算機(jī)網(wǎng)絡(luò)的基礎(chǔ)知識(shí) 468
13.1.1 網(wǎng)絡(luò)編程基礎(chǔ) 468
13.1.2 TCP/IP 協(xié)議 472
13.1.3 UDP 協(xié)議 472
13.1.4 IP 地址 472
13.1.5 端口 473
13.2 Java 網(wǎng)絡(luò)編程的地址類 473
13.2.1 Web 資源和 URL 473
13.2.2 URL 類 474
13.2.3 InetAddress 類 476
13.3 TCP Socket 編程 477
13.3.1 Java 套接字 477
13.3.2 Socket 類 478
13.3.3 ServerSocket 類 480
13.3.4 多線程 Java Socket編程 481
13.4 UDP Socket 編程 484
13.4.1 DatagramSocket API 484
13.4.2 DatagramPacket 類 485
13.5 編程實(shí)訓(xùn)——飛機(jī)大戰(zhàn)案例 (設(shè)置服務(wù)器端及客戶端) 487
本章小結(jié) 493
習(xí)題 493