Java程序設(shè)計(jì)實(shí)戰(zhàn)案例教程
定 價(jià):62 元
叢書名:信息技術(shù)人才培養(yǎng)系列教材
- 作者:王靜紅 劉芳 李雅莉
- 出版時(shí)間:2021/10/1
- ISBN:9787115573438
- 出 版 社:人民郵電出版社
- 中圖法分類:TP312.8
- 頁(yè)碼:
- 紙張:膠版紙
- 版次:
- 開本:128開
本書從初學(xué)者的角度出發(fā),由淺入深地講解了Java語(yǔ)言的相關(guān)內(nèi)容。全書共11章,主要介紹了Java開發(fā)環(huán)境的搭建及其運(yùn)行機(jī)制、基本語(yǔ)法、面向?qū)ο缶幊趟枷、多線程、常用API、集合、I/O、網(wǎng)絡(luò)編程等內(nèi)容,采用通俗易懂的語(yǔ)言闡述抽象的概念,選用生活中密切相關(guān)的例子演示知識(shí)的運(yùn)用,通過剖析案例、分析代碼含義、解決常見問題等方式進(jìn)行講解。書中還添加了許多階段性任務(wù)來模擬程序開發(fā)過程,幫助初學(xué)者培養(yǎng)良好的編程習(xí)慣。
以知識(shí)脈絡(luò)為線索,以案例實(shí)踐為核心,以科學(xué)話題為拓展,讓學(xué)習(xí)者能在掌握基本程序設(shè)計(jì)技能的基礎(chǔ)上,提升思維方法,開闊知識(shí)眼界。
知識(shí)點(diǎn)全,重點(diǎn)難點(diǎn)突出。
部分項(xiàng)目是企業(yè)真實(shí)項(xiàng)目案例。
每章有習(xí)題和上機(jī)練習(xí),方便教師布置作業(yè)并檢驗(yàn)學(xué)習(xí)效果。配套資源較為豐富。
王靜紅,博士,三級(jí)教授,專業(yè)為計(jì)算機(jī)科學(xué)與技術(shù),河北省有突出貢獻(xiàn)中青年專家,河北省新世紀(jì)三三三人才,河北省信息化專家委員會(huì)委員,河北省大數(shù)據(jù)學(xué)會(huì)秘書長(zhǎng),國(guó)際IEEE高級(jí)會(huì)員,中國(guó)人工智能學(xué)會(huì)專委會(huì)委員,石家莊市拔尖人才,石家莊市十佳青年教師,河北省人工智能學(xué)會(huì)理事,中國(guó)計(jì)算機(jī)CCF石家莊執(zhí)委主持的省科技攻關(guān)項(xiàng)目獲河北省科技進(jìn)步二等獎(jiǎng)。教學(xué)名師、學(xué)術(shù)帶頭人、中青年骨干教師。先后在《Pattern Recognition and Artificial Intelligence》、《Journal of Zhejiang University》、《計(jì)算機(jī)研究與發(fā)展》等國(guó)內(nèi)外科技刊物發(fā)表論文50多篇,其中30余篇被SCI、EI檢索收錄?蒲蟹较?yàn)榇髷?shù)據(jù)與數(shù)據(jù)挖掘、人工智能、模式識(shí)別、計(jì)算機(jī)應(yīng)用等。
第 1章 初識(shí)Java1
1.1 Java概述 1
1.1.1 什么是Java 1
1.1.2 Java語(yǔ)言的特點(diǎn) 1
1.2 Java開發(fā)環(huán)境配置 3
1.2.1 安裝JDK 3
1.2.2 JDK目錄介紹 3
1.2.3 配置環(huán)境變量 4
1.3 編寫第 一個(gè)Java程序 6
1.4 Java程序的運(yùn)行機(jī)制 8
1.5 使用Eclipse開發(fā)工具編寫Java程序 9
本章小結(jié) 13
練習(xí)題 13
上機(jī)實(shí)戰(zhàn) 15
實(shí)戰(zhàn)1-1 編寫Java程序顯示個(gè)人基本信息 15
第 2章 Java編程基礎(chǔ) 16
2.1 Java的基本語(yǔ)法 16
2.1.1 Java代碼的基本格式 16
2.1.2 Java中的注釋 17
2.1.3 Java中的標(biāo)識(shí)符 18
2.1.4 Java中的關(guān)鍵字 18
2.1.5 Java中的分隔符 19
2.2 常量與變量 19
2.2.1 常量 19
2.2.2 變量 20
2.2.3 基本數(shù)據(jù)類型 21
2.2.4 數(shù)據(jù)類型轉(zhuǎn)換 23
2.2.5 變量的作用域 25
2.3 表達(dá)式與運(yùn)算符 26
2.3.1 表達(dá)式 26
2.3.2 運(yùn)算符 26
2.3.3 鍵盤錄入 31
【任務(wù)2-1】打印超市購(gòu)物清單 31
2.4 選擇結(jié)構(gòu) 33
2.4.1 if語(yǔ)句 33
2.4.2 switch語(yǔ)句 37
2.5 循環(huán)結(jié)構(gòu) 40
2.5.1 while循環(huán)語(yǔ)句 40
2.5.2 do…while循環(huán)語(yǔ)句 41
2.5.3 for循環(huán)語(yǔ)句 42
2.5.4 循環(huán)嵌套 43
2.5.5 跳轉(zhuǎn)語(yǔ)句 44
【任務(wù)2-2】猜數(shù)字游戲 45
2.6 方法 47
2.6.1 方法的概念 47
2.6.2 方法的定義 47
2.6.3 方法的調(diào)用 48
2.6.4 方法的重載 49
2.7 數(shù)組 50
2.7.1 數(shù)組的概念 50
2.7.2 數(shù)組的聲明及初始化 50
2.7.3 數(shù)組的常用操作 51
2.7.4 多維數(shù)組 55
【任務(wù)2-3】統(tǒng)計(jì)平均分功能 55
本章小結(jié) 56
練習(xí)題 57
上機(jī)實(shí)戰(zhàn) 58
實(shí)戰(zhàn)2-1 鐵路售票系統(tǒng)的余票查詢功能 58
實(shí)戰(zhàn)2-2 網(wǎng)站會(huì)員登錄功能 58
實(shí)戰(zhàn)2-3 課堂隨機(jī)點(diǎn)名器 59
第3章 面向?qū)ο螅ㄉ希?0
3.1 類與對(duì)象 60
3.1.1 類與對(duì)象概述 61
3.1.2 類的定義 61
3.1.3 對(duì)象的創(chuàng)建與使用 61
3.1.4 類和對(duì)象的使用擴(kuò)展 62
3.2 成員變量與局部變量 64
3.3 構(gòu)造方法 65
3.3.1 構(gòu)造方法的定義 65
3.3.2 構(gòu)造方法的重載 67
3.4 包 69
3.4.1 聲明包 69
3.4.2 導(dǎo)入包 69
3.5 封裝 70
3.5.1 封裝的概述 71
3.5.2 類的封裝 71
3.5.3 this關(guān)鍵字 73
【任務(wù)3-1】計(jì)算長(zhǎng)方形的周長(zhǎng)與面積 75
3.5.4 static關(guān)鍵字 77
本章小結(jié) 81
練習(xí)題 81
上機(jī)實(shí)戰(zhàn) 84
實(shí)戰(zhàn)3-1 定義用戶類、課程類并對(duì)屬性進(jìn)行封裝 84
實(shí)戰(zhàn)3-2 實(shí)現(xiàn)WorkShop在線學(xué)習(xí)系統(tǒng)的主菜單 84
實(shí)戰(zhàn)3-3 實(shí)現(xiàn)WorkShop在線學(xué)習(xí)系統(tǒng)的注冊(cè)功能 85
實(shí)戰(zhàn)3-4 實(shí)現(xiàn)WorkShop在線學(xué)習(xí)系統(tǒng)的登錄功能 86
實(shí)戰(zhàn)3-5 實(shí)現(xiàn)WorkShop在線學(xué)習(xí)系統(tǒng)的課程查詢功能 86
第4章 面向?qū)ο螅ㄏ拢?8
4.1 類的繼承 88
4.1.1 什么是繼承 88
4.1.2 如何實(shí)現(xiàn)繼承 89
4.1.3 重寫父類方法 90
4.2 方法重寫 91
4.3 super關(guān)鍵字 92
4.4 final關(guān)鍵字 95
4.5 抽象類和接口 96
4.5.1 抽象類 96
4.5.2 接口 97
【任務(wù)4-1】冒險(xiǎn)者接口程序設(shè)計(jì) 99
4.6 多態(tài) 101
4.6.1 生活中的多態(tài) 101
4.6.2 Java中如何實(shí)現(xiàn)多態(tài) 102
4.6.3 類型轉(zhuǎn)換 104
4.6.4 類型驗(yàn)證關(guān)鍵字instanceof 105
4.6.5 Object類 106
4.7 內(nèi)部類 106
4.7.1 內(nèi)部類的概述 107
4.7.2 內(nèi)部類的分類 107
本章小結(jié) 110
練習(xí)題 110
上機(jī)實(shí)戰(zhàn) 112
實(shí)戰(zhàn)4-1 模擬小哥快跑快遞物流系統(tǒng)功能 112
第5章 異常 113
5.1 異常的概述 113
5.1.1認(rèn)識(shí)異!113
5.1.2 異常的分類 115
5.2 異常的處理機(jī)制 116
5.2.1 使try-catch-finally處理異!116
5.2.2 多重catch處理異!118
5.2.3 throws聲明異!120
5.2.4 自定義異常 121
本章小結(jié) 123
練習(xí)題 123
上機(jī)實(shí)戰(zhàn) 124
實(shí)戰(zhàn)5-1 自定義成績(jī)異常處理 124
第6章 Java API 125
6.1 String、StringBuffer和StringBuilder類 125
6.1.1 String類初始化 125
6.1.2 String類常用方法 126
6.1.3 StringBuffer類 128
6.1.4 StringBuilder類 129
6.2 System類和Runtime類 130
6.2.1 System類的常用方法 130
6.2.2 Runtime類的常用方法 131
6.3 Math類和Random類 132
6.4 處理日期的類 133
6.4.1 Date類 133
6.4.2 Calendar類 134
6.5 包裝類 134
本章小結(jié) 136
練習(xí)題 136
上機(jī)實(shí)戰(zhàn) 137
實(shí)戰(zhàn)6-1 記錄一個(gè)子串在整串中出現(xiàn)的次數(shù) 137
第7章 集合框架和泛型 138
7.1 認(rèn)識(shí)集合框架體系 138
7.2 Collection接口 139
7.3 List接口 139
7.3.1 ArrayList集合 140
7.3.2 LinkedList集合 141
7.4 Iterator迭代器 143
7.5 泛型 144
7.6 Set接口 145
7.6.1 Set接口簡(jiǎn)介 145
7.6.2 HashSet集合 146
7.7 Map接口 149
7.7.1 Map接口簡(jiǎn)介 149
7.7.2 HashMap集合 150
7.8 Collections類 153
本章小結(jié) 156
練習(xí)題 156
上機(jī)實(shí)戰(zhàn) 157
實(shí)戰(zhàn)7-1 使用HashMap存儲(chǔ)學(xué)生成績(jī)并遍歷輸出 157
實(shí)戰(zhàn)7-2 使用HashSet和ArrayList輸出10個(gè)1~20隨機(jī)數(shù) 157
實(shí)戰(zhàn)7-3 存儲(chǔ)學(xué)生信息并遍歷輸出 158
第8章 I/O 159
8.1 I/O流 159
8.1.1 I/O流的概述 159
8.1.2 I/O流的分類 159
8.2 字節(jié)流 159
8.2.1 字節(jié)流的概念 159
8.2.2 字節(jié)流讀寫文件 161
8.2.3 文件的復(fù)制 164
8.2.4 字節(jié)緩沖流 167
8.3 字符流 169
8.3.1 字符流概述 169
8.3.2 FileReader和FileWriter讀寫文件中的字符 170
8.3.3 字符緩沖流BufferedReader和BufferedWriter 171
8.3.4 轉(zhuǎn)換流 174
8.4 File類 176
8.4.1 File類概述 176
8.4.2 File類的常用方法 176
8.4.3 File類的使用 177
本章小結(jié) 184
練習(xí)題 185
上機(jī)實(shí)戰(zhàn) 186
實(shí)戰(zhàn)8-1 輸入課程信息存儲(chǔ)到磁盤文件 186
實(shí)戰(zhàn)8-2 簡(jiǎn)易文件搜索程序 187
第9章 數(shù)據(jù)庫(kù)編程 189
9.1 什么是JDBC 189
9.2 JDBC常用API 190
9.2.1 Driver接口 190
9.2.2 DriverManager類 190
9.2.3 Connection接口 190
9.2.4 Statement接口 190
9.2.5 PreparedStatement接口 191
9.2.6 ResultSet接口 192
9.3 實(shí)現(xiàn)第 一個(gè)JDBC程序 192
9.4 PreparedStatement對(duì)象 196
9.5 ResulstSet對(duì)象 198
上機(jī)實(shí)戰(zhàn) 200
實(shí)戰(zhàn)9-1 WorkShop商品庫(kù)存管理系統(tǒng) 200
本章小結(jié) 201
練習(xí)題 201
第 10章 多線程 202
10.1 線程概述 202
10.1.1 什么是進(jìn)程 202
10.1.2 什么是線程 203
10.2 在Java中實(shí)現(xiàn)多線程的方式 203
10.2.1 繼承Thread類 203
10.2.2 實(shí)現(xiàn)Runnable接口 205
10.2.3 繼承Thread類和實(shí)現(xiàn)Runnable
接口的區(qū)別 206
10.2.4 實(shí)現(xiàn)Callable接口 209
10.3 線程的生命周期 210
10.4 線程的常用方法 211
10.4.1 線程的優(yōu)先級(jí) 211
10.4.2 線程活動(dòng)狀態(tài)判斷 212
10.4.3 線程休眠 213
10.4.4 線程讓步 215
10.4.5 線程插隊(duì) 216
10.5 多線程同步與死鎖 217
10.5.1 線程安全問題 217
10.5.2 同步代碼塊 218
10.5.3 線程死鎖 221
【任務(wù)10-1】銀行存取款程序設(shè)計(jì) 222
本章小結(jié) 224
練習(xí)題 224
上機(jī)實(shí)戰(zhàn) 226
實(shí)戰(zhàn)10-1 龜兔賽跑程序 226
第 11章 Java網(wǎng)絡(luò)編程 227
11.1 網(wǎng)絡(luò)通信基礎(chǔ) 227
11.1.1 網(wǎng)絡(luò)通信的意義 227
11.1.2 IP地址和端口號(hào) 227
11.1.3 網(wǎng)絡(luò)通信協(xié)議 228
11.2 IP地址的Java實(shí)現(xiàn) 229
11.2.1 java.net包 229
11.2.2 InetAddress類 229
11.3 UDP通信的Java實(shí)現(xiàn) 230
11.3.1 DatagramPacket類與
DatagramSocket類 230
11.3.2 UDP網(wǎng)絡(luò)程序 231
11.4 TCP通信的Java實(shí)現(xiàn) 233
11.4.1 ServerSocket類與Socket
類 233
11.4.2 TCP網(wǎng)絡(luò)程序 235
本章小結(jié) 236
練習(xí)題 237
上機(jī)實(shí)戰(zhàn) 237
實(shí)戰(zhàn)11-1 UDP兩端相互聊天程序 237
實(shí)戰(zhàn)11-2 TCP實(shí)現(xiàn)文件傳輸 237