本書是“大數(shù)據(jù)應(yīng)用開發(fā)(Java)”1+X職業(yè)技能等級證書配套教材,同時(shí)也是藍(lán)橋?qū)W院“Java全棧工程師”培養(yǎng)項(xiàng)目配套教材。全書共10章,以Java異常處理機(jī)制、集合和泛型、IO和XML、Java反射機(jī)制、Java多線程機(jī)制、Java網(wǎng)絡(luò)編程API、Java注解、JUnit、JDK 8新特性以及JDBC為基礎(chǔ),系統(tǒng)介紹Java編程中的高級特性和高級處理機(jī)制。本書章節(jié)設(shè)計(jì)合理,配套資源豐富,采用“文字+圖片+案例”的講解形式,從多個(gè)角度向讀者呈現(xiàn)Java高級編程的具體語法和使用步驟,盡可能降低讀者的學(xué)習(xí)門檻。本書直接服務(wù)于“大數(shù)據(jù)應(yīng)用開發(fā)(Java)”1+X職業(yè)技能等級證書工作,可作為職業(yè)院校、應(yīng)用型本科院校計(jì)算機(jī)應(yīng)用技術(shù)、軟件技術(shù)、軟件工程、網(wǎng)絡(luò)工程和大數(shù)據(jù)應(yīng)用技術(shù)等計(jì)算機(jī)相關(guān)專業(yè)的教材,也可供從事計(jì)算機(jī)相關(guān)工作的技術(shù)人員參考。
國信藍(lán)橋教育科技(北京)股份有限公司成立于2005年,是一家以大學(xué)生就業(yè)為切入點(diǎn),以職業(yè)服務(wù)為主線,基于大學(xué)生職業(yè)生涯各個(gè)階段的需求提供精準(zhǔn)服務(wù)的人才大數(shù)據(jù)科技服務(wù)平臺;通過提供教育、就業(yè)、職業(yè)服務(wù),連接高校和企業(yè),伴隨大學(xué)生成長;獲得的資質(zhì)包括國家高新技術(shù)企業(yè)、中關(guān)村高新技術(shù)企業(yè)、人力資源服務(wù)許可證、出版物經(jīng)營許可證、教育部產(chǎn)學(xué)合作協(xié)同育人單位、教育部1+X職業(yè)技能等級證書培訓(xùn)評價(jià)組織。
目 錄
第1章 Java異常處理機(jī)制 1
1.1 異常的概念及分類 1
1.1.1 異常的概念 1
1.1.2 異常的分類 4
1.2 異常的捕獲及處理 4
1.2.1 異常簡介 4
1.2.2 異常的兩種處理方式 5
1.2.3 finally 10
1.3 異常對象與常見異常 13
1.4 throw和throws關(guān)鍵字 15
1.5 自定義異常類 18
1.6 本章小結(jié) 20
1.7 本章練習(xí) 21
第2章 集合和泛型 22
2.1 集合框架 22
2.1.1 集合與數(shù)組 22
2.1.2 Collection家族 23
2.1.3 Map家族 23
2.2 Set接口 24
2.2.1 Set簡介 24
2.2.2 HashSet的使用 25
2.2.3 TreeSet的使用 28
2.2.4 比較器 29
2.3 Iterator迭代器 32
2.3.1 Iterator接口 32
2.3.2 Iterator的使用 33
2.4 List接口 34
2.4.1 List簡介 34
2.4.2 ArrayList原理及使用 35
2.4.3 LinkedList原理及使用 36
2.5 泛型簡介 36
2.6 工具類 38
2.6.1 Collections工具類 38
2.6.2 Arrays工具類 39
2.7 Map接口 41
2.7.1 HashMap的使用 41
2.7.2 Map的遍歷 42
2.8 自動(dòng)拆箱和裝箱 44
2.8.1 包裝類 44
2.8.2 自動(dòng)拆箱和裝箱的概念 44
2.8.3 自動(dòng)拆箱和裝箱的使用 45
2.9 本章小結(jié) 46
2.10 本章練習(xí) 47
第3章 IO和XML 49
3.1 File類 49
3.1.1 File類構(gòu)造方法 49
3.1.2 靜態(tài)導(dǎo)入 50
3.1.3 File API 51
3.2 I/O流 54
3.2.1 I/O流簡介 54
3.2.2 字節(jié)流 55
3.2.3 字符流 57
3.3 其他流 59
3.3.1 裝飾器模式簡介 59
3.3.2 緩沖流 60
3.3.3 轉(zhuǎn)換流 61
3.3.4 數(shù)據(jù)流 62
3.4 XML解析 63
3.4.1 XML簡介 63
3.4.2 DOM解析XML 65
3.4.3 SAX解析XML 69
3.5 本章小結(jié) 71
3.6 本章練習(xí) 72
第4章 Java反射機(jī)制 73
4.1 反射機(jī)制概述 73
4.2 Class類 75
4.2.1 Class類簡介 75
4.2.2 Class類常用方法 77
4.3 獲取運(yùn)行時(shí)信息 77
4.4.1 獲取方法信息 77
4.4.2 獲取屬性信息 81
4.4.3 獲取構(gòu)造方法信息 82
4.4 動(dòng)態(tài)調(diào)用 85
4.4.1 創(chuàng)建對象 85
4.4.2 修改屬性 88
4.4.3 調(diào)用方法 89
4.4.4 操作動(dòng)態(tài)數(shù)組 91
4.5 本章小結(jié) 93
4.6 本章練習(xí) 93
第5章 Java多線程機(jī)制 95
5.1 多線程簡介 95
5.2 多線程的基本使用 97
5.2.1 創(chuàng)建線程類 97
5.2.2 使用線程類 98
5.3 線程控制 99
5.3.1 線程控制的基本方法 99
5.3.2 線程控制的其他方法 105
5.4 線程間的數(shù)據(jù)共享 107
5.4.1 數(shù)據(jù)不一致 107
5.4.2 控制共享數(shù)據(jù) 108
5.4.3 多線程同步 110
5.4.4 線程死鎖 114
5.5 線程協(xié)作 116
5.6 本章小結(jié) 119
5.7 本章練習(xí) 120
第6章 Java網(wǎng)絡(luò)編程API 121
6.1 網(wǎng)絡(luò)基礎(chǔ) 121
6.1.1 網(wǎng)絡(luò)協(xié)議 121
6.1.2 網(wǎng)絡(luò)分層模型 122
6.1.3 TCP/IP協(xié)議簡介 122
6.1.4 數(shù)據(jù)封裝和解封 124
6.1.5 IP地址和域名 124
6.2 Java網(wǎng)絡(luò)工具類 125
6.2.1 InetAddress類 125
6.2.2 URL類 127
6.2.3 URLConnection類 128
6.3 Socket編程 130
6.3.1 基于TCP的Socket編程 130
6.3.2 基于UDP的Socket編程 136
6.4 模擬爬蟲 138
6.4.1 爬蟲概述 138
6.4.2 使用底層技術(shù)實(shí)現(xiàn)爬蟲 138
6.4.3 爬蟲法律問題簡述 141
6.5 本章小結(jié) 141
6.6 本章練習(xí) 142
第7章 Java注解 143
7.1 Java注解概述 143
7.2 內(nèi)建注解 144
7.2.1 @Override注解 144
7.2.2 @Deprecated注解 145
7.2.3 @SuppressWarnings注解 146
7.3 自定義注解 148
7.3.1 自定義注解概述 148
7.3.2 元注解 149
7.4 本章小結(jié) 152
7.5 本章練習(xí) 153
第8章 JUnit 154
8.1 JUnit初探 154
8.1.1 JUnit 3簡介 154
8.1.2 JUnit 4簡介 157
8.1.3 JUnit 5簡介 158
8.2 JUnit案例 159
8.3 本章小結(jié) 166
8.4 本章練習(xí) 166
第9章 JDK 8新特性 168
9.1 Lambda表達(dá)式 168
9.1.1 Lambda簡介 168
9.1.2 函數(shù)式接口 169
9.1.3 Lambda案例 170
9.2 方法引用 172
9.3 接口的默認(rèn)方法 174
9.4 重復(fù)注解 176
9.5 Stream API 177
9.5.1 生成流 177
9.5.2 轉(zhuǎn)換流 178
9.5.3 終止流 179
9.6 其他JDK 8特性 182
9.7 本章小結(jié) 182
9.8 本章練習(xí) 183
第10章 JDBC 184
10.1 JDBC概述 184
10.2 JDBC開發(fā)步驟 185
10.3 使用JDBC實(shí)現(xiàn)單表增、刪、改、查 189
10.3.1 使用Statement訪問數(shù)據(jù)庫 189
10.3.2 使用PreparedStatement訪問數(shù)據(jù)庫 193
10.3.3 JDBC中的異常處理及資源關(guān)閉 194
10.3.4 Statement和PreparedStatement的比較 196
10.4 使用JDBC調(diào)用存儲(chǔ)過程和存儲(chǔ)函數(shù) 197
10.5 使用JDBC存取大文本和二進(jìn)制數(shù)據(jù) 200
10.5.1 讀寫TEXT數(shù)據(jù) 200
10.5.2 讀寫B(tài)LOB數(shù)據(jù) 203
10.6 本章小結(jié) 206
10.7 本章練習(xí) 206
附錄A 部分練習(xí)參考答案及解析 208
參考文獻(xiàn) 215