面向大數據的Java程式設計基礎(微課版)

面向大數據的Java程式設計基礎(微課版)

《面向大數據的Java程式設計基礎(微課版)》是2023年清華大學出版社出版的圖書,作者是吳正江、毋東、王海濤、翟海霞。

基本介紹

  • 中文名:面向大數據的Java程式設計基礎(微課版)
  • 作者:吳正江、毋東、王海濤、翟海霞
  • 出版時間:2023年10月1日
  • 出版社:清華大學出版社
  • ISBN:9787302641322 
  • 定價:59 元
內容簡介,圖書目錄,

內容簡介

本書根據大數據專業教學需要,以反轉課堂的教學形式,從數據處理的角度,對於Java中涉及的基礎知識進行了最佳化整理,所選內容充分銜接大數據處理相關基礎內容,為大數據專業後續的並行編程、分散式資料庫管理提供語言和思想基礎。全書共7章和1個附錄,包括Java概述及其Linux環境下IDEA開發工具的使用、Java語言基礎、類與對象、Java中常用類、異常處理、Java I/O、容器類、Linux環境下偽分散式Hadoop的簡單部署等內容。本書內容基本覆蓋了Java基礎中與數據處理相關的知識點,程式代碼給出了詳細的注釋和解釋,能夠使初學者輕鬆領會Java技術精髓,快速掌握Java開發技能。在教學實踐中也可利用本書提供的七個主題內容,開展反轉課堂教學。反轉課堂主題內容緊扣章節內容,立足於Java基礎知識,精選大數據處理過程涉及的內容,提出一些略高於基礎的問題供學生分組討論發言。本書配套有豐富的教學資源,包括微視頻、教學PPT、原始碼等,方便讀者更高效地學習Java程式設計相關知識內容。

圖書目錄

目錄
第1章面向對象程式設計語言Java/1
1.1面向對象編程概述1
1.1.1面向對象的程式設計思想1
1.1.2面向對象編程的主要特徵2
1.2Java程式設計語言概述4
1.2.1Java發展歷史4
1.2.2Java語言特點6
1.2.3JVM、JRE與JDK7
1.3大數據與Java7
1.4Linux環境下Java開發環境搭建8
1.4.1下載JDK8
1.4.2在CentOS 8中安裝JDK9
1.4.3IDEA簡介11
1.4.4IntelliJ IDEA安裝配置11
1.5IntelliJ IDEA Java開發快速入門12
小結17
習題18
第2章Java基礎語法/19
2.1Java的第一個程式19
2.2標識符、關鍵字與注釋21
2.2.1標識符21
2.2.2關鍵字21
2.2.3注釋22
2.3Java語言中的數據基本表達方式23
2.3.1基礎數據類型23
2.3.2變數24
2.3.3常量25
2.3.4語句與變數的生命周期25
2.3.5轉義字元26
2.4運算符與表達式27
2.4.1運算符的優先權與結合性27
2.4.2算術運算符28
2.4.3關係運算符30
2.4.4邏輯運算符31
2.4.5條件運算符32
2.4.6按位運算符32
2.4.7移位運算符32
2.4.8賦值運算符33
2.5數據類型轉換34
2.5.1數值的自動類型轉換34
2.5.2數值的強制類型轉換35
2.5.3類型轉換需要類型承繼關係36
2.6Java語句結構37
2.6.1順序結構37
2.6.2選擇結構37
2.6.3循環結構42
2.7方法47
2.7.1方法概述47
2.7.2方法定義與調用47
2.7.3Java中的方法50
2.8枚舉51
2.8.1聲明枚舉類型51
2.8.2聲明枚舉類型的變數52
2.8.3枚舉類型的套用52
2.9數組53
2.9.1數組類型變數的聲明53
2.9.2創建數組對象54
2.9.3數組對象的使用56
2.9.4特殊的數組String [] args59
小結60
習題60
主題1數值模擬61
T1.1主題設計目標61
T1.2數值模擬的意義61
T1.3主題準備61
T1.4主題討論62
T1.5延展討論63
第3章類、對象與接口/65
3.1面向對象的程式設計概述65
3.2類與對象67
3.2.1建立Java中的類67
3.2.2對象的引用和對象的生成70
3.2.3訪問控制73
3.2.4類定義中的多態——重載75
3.2.5類定義中的其他問題77
3.3繼承81
3.3.1父類是共同代碼的抽象81
3.3.2繼承對於對象和引用變數的影響83
3.3.3重寫與多態84
3.3.4super與final關鍵字85
3.3.5引用類型變數的轉型87
3.4抽象類88
3.4.1抽象類的定義與功能88
3.4.2抽象類與多態89
3.5接口90
3.5.1接口的功能90
3.5.2接口的定義91
3.5.3Java 8中接口92
3.5.4接口與多態94
3.6多態95
3.6.1多態的概念95
3.6.2重載——多態性的一種表現96
3.6.3重寫——多態的核心97
3.7內部類與Lambda方法99
3.7.1內部類99
3.7.2匿名內部類102
3.7.3Lambda表達式103
小結106
習題106
主題2面向對象的程式設計方法107
T2.1主題設計目標107
T2.2面向對象程式設計思路107
T2.3主題準備107
T2.4主題討論107
T2.5擴展討論109
第4章常用基礎類與函式式接口/111
4.1包111
4.1.1包的概念111
4.1.2類的載入112
4.1.3導出Jar包115
4.1.4API文檔118
4.2Object類119
4.2.1toString()方法120
4.2.2相等的對象121
4.3基本數據類型包裝類125
4.3.1包裝類對象125
4.3.2字元串與數值的轉換127
4.4字元串130
4.4.1String類字元串130
4.4.2StringBuffer類字元串135
4.4.3String類與StringBuffer類的區別與聯繫136
4.5系統時間137
4.5.1System類中的時間表示137
4.5.2Date類138
4.5.3Calendar類139
4.5.4java.time包中簡化的時間表示142
4.6工具類144
4.6.1數學運算工具類——Math類144
4.6.2數組服務類——Arrays類145
4.7函式式接口與函式式對象147
4.7.1Supplier模板147
4.7.2Consumer模板148
4.7.3Function模板150
4.7.4Predicate模板151
4.7.5其他模板151
4.7.6Arrays類中使用的函式式接口152
小結154
習題155
第5章異常處理/156
5.1異常基礎156
5.1.1程式出錯和解決方案156
5.1.2Error和Exception158
5.2異常處理160
5.2.1異常出現160
5.2.2主動異常處理——定義異常處理代碼161
5.2.3委託異常處理——方法拋出異常163
5.2.4異常處理的一些注意事項166
5.3異常對象的拋出與定義168
5.3.1異常主動拋出——自定義異常對象的生成與拋出169
5.3.2自定義異常類170
小結172
習題172
主題3CSV格式數據轉換173
T3.1主題設計目標173
T3.2實驗數據的記錄173
T3.3主題問題的提出174
T3.4主題討論175
T3.5主題拓展176
第6章數據的輸入與輸出/179
6.1Java中的I/O流對象179
6.1.1I/O流的概念179
6.1.2I/O流的分類180
6.1.3I/O流四個基礎類: InputStream、OutputStream、Reader、Writer181
6.1.4使用I/O流對象的數據輸入/輸出基本框架185
6.2結點流185
6.2.1結點流之FileInputStream和FileOutputStream186
6.2.2結點流之FileReader和FileWriter193
6.2.3結點流之ByteArrayInputStream和ByteArrayOutputStream196
6.2.4結點流對象System.out與System.in199
6.3處理流200
6.3.1為字元串服務的處理流200
6.3.2為數據服務的處理流205
6.3.3PrintStream212
6.3.4I/O流管道的構建214
6.4檔案系統的管理方法216
6.4.1File類的構造方法216
6.4.2File類的常用方法217
6.5nio.file包中檔案管理類223
6.5.1檔案系統與路徑的抽象223
6.5.2Files類對檔案系統的管理224
小結227
習題228
主題4數據存儲與檔案管理228
T4.1主題設計目標228
T4.2實驗數據的記錄228
T4.3主題準備——HDFS229
T4.4主題討論230
T4.5實踐完成232
T4.6主題延伸233
主題5快取調優初探234
T5.1執行效率234
T5.2矩陣乘法——快取命中率235
T5.3減少調用低速設備的頻率236
T5.4儘量利用高速設備作為快取237
第7章容器框架類/239
7.1容器框架239
7.1.1容器的特點240
7.1.2容器的分類與通用成員方法241
7.1.3容器與泛型244
7.2List容器246
7.2.1List容器的通用方法246
7.2.2List接口實現類249
7.2.3實現Deque接口的LinkedList252
7.3Set容器253
7.3.1Set容器的通用方法253
7.3.2HashSet256
7.3.3TreeSet258
7.4疊代器261
7.4.1Iterable接口262
7.4.2疊代器接口Iterator263
7.4.3雙向疊代器接口ListIterator266
7.5Map容器268
7.5.1Map容器通用方法268
7.5.2HashMap類273
7.5.3TreeMap類275
7.6容器的工具類276
7.6.1容器與數組之間的轉換276
7.6.2Collections類的主要功能277
7.6.3Collections中容器的包裝方法280
7.7針對容器的流式編程——內部疊代實現283
7.7.1配適容器的Stream流283
7.7.2Stream流管道的創建285
7.7.3終端操作collect與Collectors工具類289
小結293
習題293
主題6文本詞頻統計294
T6.1主題設計目標294
T6.2自行設計程式完成詞頻統計295
T6.3使用框架方案實現的詞頻統計298
T6.4拓展討論: MapReduce框架的模擬重現302
主題7列存儲數據表查詢的簡單實現302
T7.1主題背景302
T7.2數據準備304
T7.3主題討論304
T7.4主題拓展306
T7.5延伸思考307
附錄ALinux環境下偽分散式Hadoop平台的簡單部署/309
A.1依賴的作業系統——Linux309
A.2Hadoop偽分散式模式整體流程310
A.3準備工作——Java與SSH的安裝310
A.4Hadoop本地(獨立)模式的安裝312
A.5Hadoop偽分散式模式的安裝314
A.6簡單HDFS命令320

相關詞條

熱門詞條

聯絡我們