當前位置: 首頁 > 原創(chuàng)圖書 >Java編程詳解(微課版) 圖書介紹
· 多年嵌入式人才培養(yǎng)及項目研發(fā)經(jīng)驗總結(jié)
· 數(shù)百家企業(yè)嵌入式研發(fā)崗位人才需求匯總
· 數(shù)十所嵌入式專業(yè)大學(xué)院校教學(xué)現(xiàn)狀調(diào)研
· 側(cè)重實踐及案例分析并輔以代碼加以講解
本書主要介紹了Java語言的編程技術(shù)。全書共15章,介紹了Java語言的由來、面向?qū)ο蟪绦虻某醪皆O(shè)計、標識符、關(guān)鍵字、數(shù)據(jù)類型、運算符、表達式、流程控制、數(shù)組、面向?qū)ο缶幊踢M階的知識、高級類的特性、Java基本類庫、Java異常處理、Java泛型、集合、Java線程編程、Java I/O系統(tǒng)、網(wǎng)絡(luò)編程及Android下的Java高效編程等。本書內(nèi)容由淺入深,通俗易懂。每章都有課后練習題,幫助讀者鞏固所學(xué)知識。
Java編程詳解(微課版)章節(jié):
第1章 Java語言的由來 1
1.1 什么是Java語言 2
1.2 Java語言的誕生 2
1.3 Java的發(fā)展經(jīng)歷 3
1.4 Java的現(xiàn)狀 5
1.5 Java虛擬機 5
1.5.1 Java虛擬機的起源與構(gòu)造 5
1.5.2 虛擬機的優(yōu)化 6
1.5.3 現(xiàn)實生活中的虛擬機 7
1.6 Java開發(fā)環(huán)境搭建 7
1.6.1 安裝JDK和配置Java開發(fā)環(huán)境 8
1.6.2 Eclipse的安裝 8
1.7 本章小結(jié) 8
課后練習題 9
第2章 面向?qū)ο蟪绦虺醪皆O(shè)計 10
2.1 面向?qū)ο蟮母拍睢?1
2.1.1 從結(jié)構(gòu)化程序設(shè)計到面向?qū)ο蟪绦蛟O(shè)計 11
2.1.2 面向?qū)ο蟮奶卣鳌?1
2.2 面向?qū)ο蟪绦蛟O(shè)計 12
2.2.1 知識準備:面向?qū)ο缶幊绦g(shù)語 12
2.2.2 知識準備:對象 12
2.2.3 知識準備:類 13
2.2.4 知識準備:類的聲明 13
2.2.5 知識準備:屬性的聲明 15
2.2.6 知識準備:方法的聲明 15
2.2.7 知識準備:構(gòu)造器(構(gòu)造方法) 16
2.2.8 知識準備:對象的創(chuàng)建和使用 17
2.2.9 任務(wù)一:創(chuàng)建并引用一個對象 17
2.2.10 技能拓展任務(wù):帶參數(shù)構(gòu)造器的聲明與使用 18
2.3 信息的封裝和隱藏 19
2.3.1 知識準備:信息的封裝 19
2.3.2 知識準備:信息的隱藏 19
2.4 Java源文件結(jié)構(gòu) 20
2.4.1 知識準備:package語句 20
2.4.2 知識準備:import語句 22
2.4.3 任務(wù)二:package語句和import語句實例 22
2.5 JDK中常用的包 23
2.6 本章小結(jié) 24
課后練習題 24
第3章 標識符、關(guān)鍵字與數(shù)據(jù)類型 26
3.1 Java注釋 27
3.1.1 知識準備:Java注釋使用規(guī)則 27
3.1.2 知識準備:利用javadoc生成API文檔 27
3.1.3 任務(wù)一:使用javadoc生成API文檔 30
3.2 分隔符和標識符 31
3.2.1 知識準備:空白分隔符 31
3.2.2 知識準備:普通分隔符 32
3.2.3 知識準備:Java語言標識符的組成規(guī)則 32
3.2.4 任務(wù)二:綜合使用Java分隔符和標識符 33
3.3 Java關(guān)鍵字/保留字 33
3.3.1 知識準備:Java關(guān)鍵字使用規(guī)范 33
3.3.2 知識準備:重點關(guān)鍵字解析 34
3.4 數(shù)據(jù)類型 34
3.4.1 知識準備:簡單類型 34
3.4.2 知識準備:非布爾型簡單數(shù)據(jù)類型之間的轉(zhuǎn)換 37
3.4.3 任務(wù)三:簡單數(shù)據(jù)類型轉(zhuǎn)換實例 38
3.4.4 知識準備:引用類型 38
3.4.5 任務(wù)四:引用類型程序?qū)嵗?9
3.4.6 技能拓展任務(wù):分析對象的構(gòu)造和初始化 40
3.5 變量及其初始化 41
3.5.1 知識準備:局部變量 41
3.5.2 知識準備:成員變量 42
3.5.3 知識準備:變量初始化 43
3.5.4 知識準備:局部變量的初始化 43
3.5.5 知識準備:成員變量的初始化 44
3.5.6 任務(wù)五:成員變量的3種初始化方式 44
3.6 值傳遞和引用傳遞 45
3.6.1 知識準備:Java中的值傳遞 45
3.6.2 知識準備:Java中的引用傳遞 46
3.7 Java編碼規(guī)范 46
3.7.1 知識準備:命名規(guī)范 47
3.7.2 知識準備:代碼編寫格式規(guī)范 48
3.8 本章小結(jié) 48
課后練習題 48
第4章 運算符、表達式與流程控制 50
4.1 運算符 51
4.1.1 知識準備:算術(shù)運算符 51
4.1.2 知識準備:位運算符 52
4.1.3 知識準備:關(guān)系運算符和邏輯運算符 53
4.1.4 任務(wù)一:短路布爾運算 54
4.1.5 知識準備:三元運算符 56
4.1.6 知識準備:遞增/遞減運算符 56
4.1.7 知識準備:賦值運算符 56
4.1.8 任務(wù)二:簡單數(shù)據(jù)類型和引用數(shù)據(jù)類型的賦值操作 58
4.1.9 知識準備:運算符的優(yōu)先順序 59
4.1.10 技能拓展任務(wù):字符串連接運算符 60
4.2 表達式 61
4.2.1 知識準備:表達式中運算符的結(jié)合性 61
4.2.2 知識準備:表達式中運算符的優(yōu)先順序 61
4.3 分支語句 62
4.3.1 知識準備:if語句 62
4.3.2 任務(wù)三:if語句的用法 63
4.3.3 知識準備:switch語句 64
4.3.4 任務(wù)四:switch語句實例 64
4.4 循環(huán)語句 66
4.4.1 知識準備:for語句 66
4.4.2 任務(wù)五:for循環(huán)語句實例 67
4.4.3 知識準備:while語句 68
4.4.4 知識準備:do…while語句 69
4.4.5 知識準備:break及continue語句 69
4.4.6 技能拓展任務(wù):continue結(jié)合標簽的使用 71
4.5 本章小結(jié) 72
課后練習題 72
第5章 數(shù)組 74
5.1 數(shù)組的基本概念 75
5.2 一維數(shù)組 75
5.2.1 知識準備:一維數(shù)組的聲明 75
5.2.2 知識準備:一維數(shù)組的創(chuàng)建 75
5.2.3 任務(wù)一:一維數(shù)組的聲明與創(chuàng)建實例 76
5.2.4 知識準備:一維數(shù)組的初始化 76
5.2.5 知識準備:引用數(shù)組元素 79
5.2.6 任務(wù)二:引用數(shù)組實例——對數(shù)組排序 79
5.2.7 知識準備:簡單數(shù)據(jù)類型數(shù)組的內(nèi)存空間 80
5.2.8 技能拓展任務(wù):數(shù)組復(fù)制 81
5.3 數(shù)據(jù)結(jié)構(gòu)及數(shù)組應(yīng)用 83
5.3.1 知識準備:堆棧 83
5.3.2 任務(wù)三:使用數(shù)組實現(xiàn)堆!83
5.3.3 知識準備:隊列 85
5.3.4 任務(wù)四:使用數(shù)組實現(xiàn)隊列 85
5.3.5 知識準備:排序算法 87
5.3.6 技能拓展任務(wù):排序算法實例 90
5.4 多維數(shù)組 91
5.4.1 知識準備:多維數(shù)組的聲明 91
5.4.2 知識準備:多維數(shù)組的創(chuàng)建 91
5.4.3 知識準備:多維數(shù)組的初始化 91
5.5 本章小結(jié) 92
課后練習題 92
第6章 面向?qū)ο缶幊踢M階 94
6.1 繼承 95
6.1.1 類的繼承 95
6.1.2 任務(wù)一:利用繼承實現(xiàn)通訊錄實例 97
6.1.3 訪問控制 99
6.2 super關(guān)鍵字 100
6.2.1 調(diào)用父類構(gòu)造器 100
6.2.2 調(diào)用父類的屬性和方法 101
6.2.3 任務(wù)二:super關(guān)鍵字的使用 101
6.3 this關(guān)鍵字 103
6.3.1 知識準備:使用this關(guān)鍵字獲得當前對象的引用 103
6.3.2 知識準備:在構(gòu)造器中調(diào)用構(gòu)造器 104
6.3.3 知識準備:static的含義 105
6.4 方法的覆蓋與重載 106
6.4.1 知識準備:方法的覆蓋 106
6.4.2 知識準備:方法重載 108
6.4.3 知識準備:構(gòu)造器重載 108
6.5 通常需要覆蓋的幾種方法 109
6.5.1 知識準備:對象的toString()方法 109
6.5.2 任務(wù)三:覆蓋toString()方法 110
6.5.3 知識準備:==和equals() 111
6.6 對象的初始化 114
6.7 封裝類 118
6.7.1 知識準備:Java中的封裝類 118
6.7.2 知識準備:自動拆箱和裝箱 119
6.7.3 知識拓展:在Java中實現(xiàn)小數(shù)的精確計算 121
6.8 本章小結(jié) 122
課后練習題 122
第7章 高級類特性 124
7.1 static關(guān)鍵字 125
7.1.1 static 125
7.1.2 static變量的引用方法 125
7.2 final關(guān)鍵字 126
7.2.1 final數(shù)據(jù) 126
7.2.2 final方法 126
7.2.3 final類 127
7.3 抽象類 127
7.3.1 abstract概述 127
7.3.2 abstract class 128
7.3.3 模板設(shè)計模式 128
7.4 接口 129
7.4.1 接口的定義 129
7.4.2 接口的使用 129
7.4.3 接口的擴展 129
7.4.4 抽象類和接口 130
7.5 多態(tài) 131
7.5.1 多態(tài)概述 131
7.5.2 instanceof概述 135
7.5.3 應(yīng)用類型數(shù)據(jù)轉(zhuǎn)換 136
7.6 內(nèi)部類 137
7.6.1 內(nèi)部類定義 137
7.6.2 局部內(nèi)部類 137
7.6.3 匿名內(nèi)部類 138
7.6.4 內(nèi)部類的特性 139
7.7 修飾符的適用范圍 139
7.7.1 類的適用范圍 139
7.7.2 變量的適用范圍 139
7.7.3 方法的適用范圍 140
7.7.4 接口的適用范圍 140
7.8 本章小結(jié) 140
課后練習題 141
第8章 Java基本類庫 142
8.1 系統(tǒng)輸入 143
8.1.1 運行Java程序的參數(shù) 143
8.1.2 使用Scanner獲取鍵盤輸入 143
8.2 Lang包下的類 144
8.2.1 System類 144
8.2.2 Runtime類 145
8.2.3 Object類 145
8.2.4 String類、StringBuffer類、StringBuilder類和Math類 146
8.3 日期時間類 149
8.3.1 Date類和Calendar類 149
8.3.2 TimeZone類 150
8.4 本章小結(jié) 151
課后練習題 151
第9章 Java異常處理 152
9.1 異常概述 153
9.1.1 異常的概念 153
9.1.2 Error/Exception層次關(guān)系 153
9.1.3 數(shù)學(xué)計算異常示例 153
9.1.4 訪問空對象引起的異常示例 154
9.2 Java中異常的處理 155
9.2.1 常見異!155
9.2.2 Java中的異常處理機制 155
9.2.3 通過try…catch…finally語句來處理異!155
9.2.4 將異常拋出 158
9.2.5 捕獲異常和拋出異常結(jié)合使用 161
9.2.6 進行方法覆蓋時對異常的處理 161
9.3 自定義異!162
9.3.1 知識準備:自定義異常概念 162
9.3.2 知識拓展:通過printStackTrace()追蹤異常源頭 163
9.4 本章小結(jié) 164
課后練習題 164
第10章 Java泛型 166
10.1 泛型入門 167
10.2 泛型類 168
10.3 泛型方法 170
10.3.1 定義泛型方法 170
10.3.2 靜態(tài)方法使用泛型 171
10.4 泛型接口 172
10.4.1 使用泛型接口 172
10.4.2 繼承泛型接口 172
10.5 泛型的高級特性 173
10.5.1 泛型的通配符 173
10.5.2 泛型限定——上限 174
10.5.3 泛型限定——下限 175
10.6 本章小結(jié) 175
課后練習題 176
第11章 集合 177
11.1 集合概述 178
11.2 集合的層次結(jié)構(gòu) 178
11.3 Collection接口 179
11.3.1 Collection接口介紹 179
11.3.2 關(guān)于Collection接口的子接口與類 179
11.3.3 實現(xiàn)集合的增刪改查 179
11.3.4 使用foreach循環(huán)進行遍歷 180
11.3.5 使用iterator接口進行遍歷 181
11.4 Set集合 183
11.4.1 HashSet類 183
11.4.2 TreeSet類 184
11.4.3 LinkedHashSet類 185
11.5 List集合 185
11.5.1 ArrayList類 186
11.5.2 LinkedList類 187
11.5.3 Vector類 188
11.5.4 Vector類與ArrayList類的區(qū)別 188
11.6 Map集合 188
11.6.1 HashMap類 189
11.6.2 Hashtable類 189
11.6.3 LinkedHashMap類 189
11.6.4 Map集合的遍歷 190
11.7 本章小結(jié) 190
課后練習題 191
第12章 Java線程編程 192
12.1 線程概述 193
12.2 Java線程模型 194
12.3 創(chuàng)建線程 194
12.3.1 知識準備:繼承Thread類創(chuàng)建線程 194
12.3.2 知識準備:實現(xiàn)Runnable接口創(chuàng)建線程 195
12.3.3 知識準備:后臺線程概念 196
12.3.4 任務(wù)一:繼承Thread類創(chuàng)建線程實例 196
12.3.5 任務(wù)二:實現(xiàn)Runnable接口方式創(chuàng)建線程 197
12.3.6 技能拓展任務(wù):實現(xiàn)守護線程實例 198
12.4 線程的運行機制 198
12.4.1 知識準備:線程的基本狀態(tài) 198
12.4.2 知識準備:線程的結(jié)束方式 199
12.4.3 任務(wù)三:線程的基本狀態(tài)實例 200
12.5 線程控制 201
12.5.1 知識準備:測試線程 201
12.5.2 知識準備:中斷線程 201
12.5.3 知識準備:設(shè)置線程優(yōu)先級 202
12.5.4 知識準備:Thread.join()線程等待 202
12.5.5 任務(wù)四:設(shè)置線程優(yōu)先級實例 203
12.5.6 技能拓展任務(wù):線程的join()方法實現(xiàn)實例 204
12.6 多線程編程 207
12.6.1 知識準備:多線程概述 207
12.6.2 知識準備:多線程共享數(shù)據(jù) 209
12.6.3 知識準備:線程間通信 214
12.6.4 知識準備:實現(xiàn)線程間通信 214
12.6.5 知識拓展:定時器 217
12.7 多線程編程的一般規(guī)則 218
12.8 java.util.concurrent中的同步API 219
12.8.1 知識準備:線程池 219
12.8.2 知識準備:鎖 221
12.8.3 任務(wù)五:線程池實例 221
12.8.4 知識準備:使用鎖實例 223
12.8.5 知識準備:使用讀/寫鎖 228
12.8.6 技能拓展任務(wù):使用Condition來實現(xiàn)線程間的通信 231
12.9 本章小結(jié) 233
課后練習題 234
第13章 Java I/O系統(tǒng) 235
13.1 File類 236
13.1.1 目錄列表類 236
13.1.2 目錄實用工具 237
13.1.3 目錄的檢查及創(chuàng)建 237
13.2 輸入和輸出 238
13.2.1 InputStream類型 239
13.2.2 OutputStream類型 240
13.3 Reader和Writer 241
13.3.1 數(shù)據(jù)的來源和去處 241
13.3.2 更改流的行為 242
13.3.3 未發(fā)生變化的類 242
13.4 RandomAccessFile 243
13.5 I/O流的典型使用方式 243
13.5.1 緩沖輸入文件 243
13.5.2 從內(nèi)存中輸入 244
13.5.3 格式化的內(nèi)存輸入 244
13.5.4 基本的文件輸入 245
13.5.5 讀/寫隨機訪問文件 245
13.5.6 文件的復(fù)制 246
13.6 本章小結(jié) 248
課后練習題 248
第14章 網(wǎng)絡(luò)編程 250
14.1 網(wǎng)絡(luò)基礎(chǔ) 251
14.1.1 網(wǎng)絡(luò)類型 251
14.1.2 網(wǎng)絡(luò)工作模式 251
14.1.3 網(wǎng)絡(luò)通信結(jié)構(gòu) 251
14.2 網(wǎng)絡(luò)通信協(xié)議 252
14.2.1 知識準備:TCP 252
14.2.2 知識準備:IP 252
14.2.3 知識準備:TCP/IP 253
14.2.4 知識準備:IP地址 253
14.2.5 端口 254
14.2.6 任務(wù)一:通過Java編程獲得IP地址 255
14.3 Socket套接字 256
14.4 Java Socket編程 257
14.4.1 ServerSocket 257
14.4.2 Socket類 257
14.4.3 Socket通信過程 258
14.4.4 任務(wù)二:Socket通信實例 258
14.5 Java URL類 260
14.5.1 知識準備:URL概念 260
14.5.2 知識準備:Java中的URL類 260
14.5.3 知識拓展:URL應(yīng)用實例 261
14.6 本章小結(jié) 263
課后練習題 264
第15章 Android下的Java高效編程 265
15.1 Android下Java編程性能優(yōu)化介紹 266
15.2 提升性能的優(yōu)化方法 266
15.2.1 使用本地方法 266
15.2.2 使用虛方法優(yōu)于使用接口 267
15.2.3 使用靜態(tài)代替虛擬 267
15.2.4 緩沖對象屬性調(diào)用 267
15.2.5 聲明final常量 268
15.2.6 考慮用包訪問權(quán)限替代私有訪問權(quán)限 268
15.2.7 使用改進的for循環(huán)語法 269
15.3 編程中注意避免的事項 270
15.3.1 避免創(chuàng)建不必要的對象 270
15.3.2 避免使用內(nèi)部的Getters/Setters 270
15.3.3 避免使用枚舉類型 270
15.3.4 避免使用浮點類型 271
15.4 標準操作的時間比較 271
15.5 本章小結(jié) 272
課后練習題 272