Java程序設(shè)計(jì)基礎(chǔ)教程(慕課版)
定 價(jià):59.8 元
叢書名:新一代信息技術(shù)“十三五”系列規(guī)劃教材
- 作者:劉剛 劉偉
- 出版時(shí)間:2019/8/1
- ISBN:9787115495143
- 出 版 社:人民郵電出版社
- 中圖法分類:TP312JA
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:10開
本書通過大量案例詳細(xì)講解了Java程序設(shè)計(jì)的基礎(chǔ)知識,共12章,內(nèi)容包括:Java基礎(chǔ)知識,基本類型及運(yùn)算符,控制執(zhí)行流程,字符串,面向?qū)ο,集合和?shù)組,文件及流,日期和時(shí)間,反射、異常及枚舉,并發(fā)編程,網(wǎng)絡(luò)編程及綜合實(shí)訓(xùn)簡易網(wǎng)上自助銀行系統(tǒng)。本書運(yùn)用圖、文、視頻配合講解,淺顯易懂,代碼注釋詳細(xì),配全套慕課視頻,資源豐富,貼近行業(yè)應(yīng)用。
本書適合作為本科、高職高專、培訓(xùn)班Java基礎(chǔ)課程的教材,也可供讀者自學(xué)使用。
精講視頻,詳細(xì)講解基礎(chǔ)知識、行業(yè)應(yīng)用、案例操作過程
一線項(xiàng)目研發(fā)、設(shè)計(jì)、管理工程師 極客學(xué)院、北風(fēng)網(wǎng)金牌講師詳細(xì)講解實(shí)戰(zhàn)應(yīng)用
任務(wù)案例邊學(xué)邊練,全面涵蓋知識點(diǎn)
基礎(chǔ)知識任務(wù) 每章實(shí)戰(zhàn)案例 綜合設(shè)計(jì)實(shí)例 綜合實(shí)戰(zhàn),4步從零基礎(chǔ)到JS達(dá)人
平臺支撐,免費(fèi)贈送資源
1.全部案例源代碼、素材、*終文件
2.全書電子教案
3.人郵學(xué)院高清精講視頻課程
視頻可掃書中二維碼移動觀看,也可以登錄人郵學(xué)院(www.rymooc.com),注冊登錄后使用封底刮刮卡激活課程,在線觀看。案例代碼等資源可登陸人郵教育社區(qū)(www.ryjiaoyu.com.cn)或根據(jù)書中網(wǎng)盤地址下載使用。
劉剛,一線項(xiàng)目研發(fā)、設(shè)計(jì)、管理工程師,高級項(xiàng)目管理師、項(xiàng)目監(jiān)理師,負(fù)責(zé)紀(jì)檢監(jiān)察廉政監(jiān)督監(jiān)管平臺、國家郵政局項(xiàng)目、政務(wù)大數(shù)據(jù)等多個(gè)國家級項(xiàng)目的設(shè)計(jì)與開發(fā)。
極客學(xué)院、北風(fēng)網(wǎng)金牌講師。
暢銷書《微信小程序開發(fā)圖解案例教程(附精講視頻)》《小程序?qū)崙?zhàn)視頻課:微信小程序開發(fā)全案精講》《Axure RP8原型設(shè)計(jì)圖解微課視頻教程 (Web App)》作者。
全部案例源代碼、素材、最終文件、電子教案可登錄人郵教育社區(qū)(www.ryjiaoyu.com.cn)下載使用。
第 1章 Java基礎(chǔ)知識 1
1.1 Java簡介 2
1.1.1 Java的誕生及發(fā)展歷程 2
1.1.2 Java的語言特點(diǎn) 2
1.2 Java開發(fā)環(huán)境搭建 3
1.2.1 JDK、JRE與JVM 3
1.2.2 系統(tǒng)環(huán)境變量配置 4
1.3 Java開發(fā)工具的使用 11
1.3.1 Java比較流行的編輯工具簡介 12
1.3.2 Eclipse的安裝及使用 13
1.4 動手任務(wù):使用Eclipse編寫Hello World程序 14
1.5 動手任務(wù):創(chuàng)建一個(gè)Java項(xiàng)目 18
1.6 本章小結(jié) 18
第 2章 基本數(shù)據(jù)類型及運(yùn)算符 20
2.1 基本數(shù)據(jù)類型 21
2.1.1 基本數(shù)據(jù)類型分類 21
2.1.2 基本數(shù)據(jù)類型的拆裝箱 22
案例2-1 常量和變量 23
案例2-2 基本數(shù)據(jù)類型的拆裝箱 23
案例2-3 獲取基本數(shù)據(jù)類型的范圍值 24
案例2-4 包裝類的轉(zhuǎn)換方法 25
2.1.3 拓展:Integer的parse()和valueOf()使用 25
2.2 運(yùn)算符 26
2.2.1 算術(shù)運(yùn)算符 26
案例2-5 加減運(yùn)算 27
案例2-6 乘除法運(yùn)算 28
案例2-7 取余運(yùn)算 28
案例2-8 自增自減 29
2.2.2 關(guān)系運(yùn)算符和邏輯運(yùn)算符 29
案例2-9 邏輯與運(yùn)算與邏輯或運(yùn)算 31
2.2.3 賦值運(yùn)算符與條件運(yùn)算符 32
2.2.4 運(yùn)算符的優(yōu)先級 33
案例2-10 二目運(yùn)算求值順序 34
2.3 動手任務(wù):IP地址轉(zhuǎn)換程序設(shè)計(jì) 35
2.4 本章小結(jié) 37
第3章 控制執(zhí)行流程 38
3.1 選擇結(jié)構(gòu)語句 39
3.1.1 if條件語句 39
案例3-1 if-else初探 39
案例3-2 if-else嵌套語句 40
3.1.2 switch條件語句 40
案例3-3 switch實(shí)現(xiàn)阿拉伯?dāng)?shù)字轉(zhuǎn)中文大寫數(shù)字 41
案例3-4 當(dāng)前月份距元旦天數(shù) 41
3.2 循環(huán)結(jié)構(gòu)語句 42
3.2.1 while循環(huán)語句 42
案例3-5 循環(huán)輸出1~10 42
3.2.2 do-while循環(huán)語句 43
案例3-6 while和do-while 43
3.2.3 for循環(huán)語句 44
案例3-7 for循環(huán)的使用 44
案例3-8 多變量for語句 45
3.2.4 break與continue 45
案例3-9 break和continue 45
3.3 動手任務(wù):冒泡排序 46
案例3-10 數(shù)組冒泡排序 47
3.4 本章小結(jié) 48
第4章 字符串 49
4.1 String類及其常用API 50
案例4-1 字符串的初始化 50
4.1.1 字符串常量池 51
案例4-2 字符串不同創(chuàng)建方式耗時(shí)比較 51
4.1.2 字符串常用API 52
案例4-3 字符串非空判斷與長度返回 53
案例4-4 字符串的查詢操作 54
案例4-5 字符串的修改操作 55
案例4-6 字符串的分割操作 56
案例4-7 字符串的比較操作 57
4.1.3 拓展:不變的字符串 57
4.2 StringBuffer類 59
4.2.1 StringBuffer的應(yīng)用 59
案例4-8 StringBuffer的字符串拼接插入 59
案例4-9 StringBuffer的常用操作方法 60
4.2.2 StringBuilder與StringBuffer的比較 61
案例4-10 StringBuilder的常用方法 61
4.3 常用的JavaAPI 62
4.3.1 System類 62
案例4-11 系統(tǒng)環(huán)境變量 62
案例4-12 系統(tǒng)當(dāng)前時(shí)間 63
案例4-13 數(shù)組拷貝 64
4.3.2 Random類與Math類 64
案例4-14 Random隨機(jī)生成隨機(jī)數(shù) 64
案例4-15 數(shù)學(xué)類 66
4.4 動手任務(wù):猜數(shù)字游戲 66
案例4-16 Scanner初識 67
案例4-17 猜數(shù)字游戲 68
4.5 本章小結(jié) 69
第5章 面向?qū)ο蟆?0
5.1 面向?qū)ο蟾拍睢?1
5.2 類的概念 72
5.2.1 什么是類 72
5.2.2 類的使用 72
案例5-1 類的聲明 73
案例5-2 類的使用 74
案例5-3 方法調(diào)用及返回值 75
5.3 封裝 76
案例5-4 方法封裝 76
案例5-5 屬性封裝 77
5.4 繼承 79
案例5-6 魚的繼承 80
案例5-7 抽象類的定義和使用 83
案例5-8 接口的使用 84
5.5 多態(tài) 86
5.5.1 多態(tài)的概念 86
5.5.2 重寫與重載 87
案例5-9 方法的重載 87
案例5-10 方法的重寫 88
5.5.3 內(nèi)部類 89
案例5-11 內(nèi)部類的創(chuàng)建及使用 89
案例5-12 嵌入類 91
案例5-13 內(nèi)部成員類 92
案例5-14 本地類 93
案例5-15 內(nèi)部類的相互訪問 94
5.5.4 拓展:Object類 97
5.6 動手任務(wù):多態(tài)的強(qiáng)大間諜的變身技能 97
5.7 本章小結(jié) 100
第6章 集合和數(shù)組 102
6.1 集合初探 103
6.1.1 Collection 103
6.1.2 Map集合 104
案例6-1 Map的使用 104
案例6-2 HashMap及TreeMap的使用 106
6.1.3 List鏈表 107
案例6-3 順序表 108
案例6-4 鏈表操作 111
6.1.4 Set集合 112
案例6-5 計(jì)算出現(xiàn)的次數(shù) 112
6.2 集合的遍歷 113
6.2.1 Iterator接口 113
案例6-6 集合的迭代 113
6.2.2 增強(qiáng)型for循環(huán) 115
案例6-7 增強(qiáng)型for循環(huán) 115
6.3 動手任務(wù):三人斗地主洗牌發(fā)牌程序 116
6.4 數(shù)組 119
6.4.1 數(shù)組的定義及初始化 120
6.4.2 數(shù)組的使用 120
案例6-8 一維數(shù)組的使用 120
案例6-9 二維數(shù)組 122
6.5 動手任務(wù): 數(shù)組排序 122
6.6 本章小結(jié) 125
第7章 文件及流 126
7.1 File類 127
7.1.1 File的常用API 127
案例7-1 文件的創(chuàng)建 127
案例7-2 文件的固有屬性 128
案例7-3 文件的可變屬性 129
7.1.2 目錄文件遍歷 130
案例7-4 獲取子文件列表和目錄 130
案例7-5 獲取目錄下的所有文本文件并打印輸出 131
案例7-6 刪除文件夾 132
7.2 輸入輸出流 133
7.2.1 輸入輸出流概念 134
7.2.2 字節(jié)流 134
案例7-7 文件輸入輸出流 135
案例7-8 文件的復(fù)制 137
案例7-9 RandomAccessFile操作文件 138
7.2.3 字符流 139
案例7-10 使用緩存字符流讀取和寫入數(shù)據(jù) 139
7.3 動手任務(wù):文件系統(tǒng) 140
7.4 本章小結(jié) 146
第8章 日期和時(shí)間 147
8.1 Date類 148
8.1.1 計(jì)算機(jī)的時(shí)間 148
案例8-1 當(dāng)前時(shí)間與計(jì)算機(jī)元年 148
8.1.2 Date類的應(yīng)用 148
案例8-2 Date類的使用 149
8.2 Calendar類 149
8.2.1 什么是日歷類型 149
8.2.2 日歷類型的計(jì)算 149
案例8-3 日期的計(jì)算 149
案例8-4 萬年歷 151
8.3 動手任務(wù):超市過期提醒及促銷活動 152
8.4 本章小結(jié) 153
第9章 反射、異常及枚舉 154
9.1 反射 155
9.1.1 什么是反射 155
案例9-1 類型自動識別 155
案例9-2 利用Class創(chuàng)建類對象 156
案例9-3 通過類名獲取類信息 157
案例9-4 instanceof獲取類型信息 158
案例9-5 Java的String類的反射 159
9.1.2 反射的應(yīng)用 160
案例9-6 獲取類的構(gòu)造方法 160
案例9-7 使用反射創(chuàng)建一個(gè)類的
對象 161
案例9-8 獲取類中的成員屬性 162
案例9-9 改變成員變量的值 163
案例9-10 獲取類的方法 164
案例9-11 執(zhí)行類的方法 165
9.2 異!167
9.2.1 概念 167
9.2.2 基本異!168
案例9-12 數(shù)組下標(biāo)越界異!168
案例9-13 異常的捕獲順序 168
案例9-14 finally語句塊 169
案例9-15 異常拋出 170
9.2.3 自定義異!171
案例9-16 自定義異!171
9.2.4 拓展:Error及Runtime
Exception 172
9.3 枚舉 172
案例9-17 枚舉的簡單使用 173
案例9-18 向enum中添加新方法 173
案例9-19 Enum實(shí)現(xiàn)接口 174
9.4 動手任務(wù):復(fù)制對象屬性 175
9.5 本章小結(jié) 179
第 10章 并發(fā)編程 181
10.1 線程與進(jìn)程 182
10.2 線程的創(chuàng)建 182
10.2.1 繼承Thread類 182
案例10-1 Thread實(shí)現(xiàn)多線程 184
案例10-2 Thread的部分方法使用 185
案例10-3 start方法和run方法 185
10.2.2 實(shí)現(xiàn)Runnable接口 187
案例10-4 Runnable實(shí)現(xiàn)多線程 187
10.3 線程的調(diào)度 187
10.3.1 線程的生命周期 187
10.3.2 線程的優(yōu)先級 188
案例10-5 線程優(yōu)先級 188
10.3.3 線程插隊(duì) 189
案例10-6 線程插隊(duì) 190
10.3.4 線程休眠 191
案例10-7 線程休眠 191
10.3.5 同步與互斥 193
案例10-8 非同步接水 193
案例10-9 同步接水 194
案例10-10 線程互斥的計(jì)數(shù)器 195
案例10-11 生產(chǎn)者-消費(fèi)者模型 195
10.3.6 死鎖問題 197
案例10-12 線程死鎖 198
10.4 多線程 199
10.4.1 線程池技術(shù) 199
案例10-13 緩存線程池 199
案例10-14 計(jì)劃任務(wù)線程池 200
10.4.2 Callable和Future 200
案例10-15 Callable的用法 201
案例10-16 Future的用法 201
10.5 動手任務(wù):多線程獲取文件大小 202
10.6 本章小結(jié) 205
第 11章 網(wǎng)絡(luò)編程 206
11.1 網(wǎng)絡(luò)通信協(xié)議 207
11.1.1 TCP及UDP協(xié)議 207
案例11-1 URL和URLConnection的使用 207
11.1.2 IP地址及端口號 208
案例11-2 IP類的使用 208
11.2 TCP通信 209
11.2.1 Socket 209
11.2.2 ServerSocket 209
案例11-3 端到端通信 210
11.3 UDP通信 211
11.3.1 DatagramPacket 211
11.3.2 DatagramSocket 212
案例11-4 UDP通信模型 213
11.4 動手任務(wù):通信程序設(shè)計(jì)(對點(diǎn)聊天室) 214
11.5 本章小結(jié) 218
第 12章 綜合實(shí)訓(xùn)簡易網(wǎng)上自助銀行系統(tǒng) 219
12.1 JDBC 220
12.1.1 JDBC的概念 220
12.1.2 JDBC通用API 221
案例12-1 DriverManager的使用 222
案例12-2 Statement的使用 224
案例12-3 PreparedStatement和ResultSet的使用 226
12.2 日志 228
12.3 測試 228
12.3.1 JUnit簡介 228
12.3.2 功能測試及斷言 229
案例12-4 簡單的JUnit測試案例 229
案例12-5 JUnit的注解 230
12.4 事務(wù) 232
案例12-6 本地事務(wù) 233
12.5 簡易網(wǎng)上銀行系統(tǒng) 238
12.5.1 基礎(chǔ)項(xiàng)目搭建 238
12.5.2 賬戶注冊及登錄 255
12.5.3 轉(zhuǎn)賬功能(事務(wù)) 260
12.6 本章小結(jié) 264