注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Java 12程序設(shè)計(jì)學(xué)習(xí)指南

Java 12程序設(shè)計(jì)學(xué)習(xí)指南

Java 12程序設(shè)計(jì)學(xué)習(xí)指南

定 價(jià):¥89.90

作 者: [美]尼克·薩莫耶洛夫 (Nick Samoylov) 著 沈澤剛 王永勝 譯
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買這本書(shū)可以去


ISBN: 9787302570684 出版時(shí)間: 2021-04-01 包裝: 平裝-膠訂
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 385 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)以Java 12為基礎(chǔ),全面系統(tǒng)地介紹Java語(yǔ)言,并引導(dǎo)讀者進(jìn)入**的Java編程領(lǐng)域。全書(shū)分為三部分,共包括19章。部分為Java編程概述,包括第1~3章,主要講解Java 12入門(mén)知識(shí),Java面向?qū)ο缶幊毯蚃ava基礎(chǔ)知識(shí);第二部分為Java主要構(gòu)建單元,包括第4~12章,主要講解異常處理,字符串、輸入輸出和文件,數(shù)據(jù)結(jié)構(gòu)、泛型和流行實(shí)用工具,Java標(biāo)準(zhǔn)庫(kù)和外部庫(kù),多線程和并發(fā)處理,JVM結(jié)構(gòu)和垃圾收集,數(shù)據(jù)庫(kù)數(shù)據(jù)管理,網(wǎng)絡(luò)編程以及Java GUI編程等;第三部分為Java高級(jí)階段,包括第13~19章,主要講解函數(shù)式編程,Java標(biāo)準(zhǔn)流,反應(yīng)式編程,微服務(wù)架構(gòu),Java微基準(zhǔn)測(cè)試工具,高質(zhì)量代碼編寫(xiě)**實(shí)踐以及Java的**特征。 本書(shū)內(nèi)容豐富全面,適用于任何想學(xué)習(xí)Java的讀者。學(xué)習(xí)本書(shū)內(nèi)容不需要讀者具有Java專業(yè)知識(shí)或任何其他編程語(yǔ)言知識(shí)。本書(shū)可供高等院校學(xué)生和教師參考,也可供軟件開(kāi)發(fā)人員和Java愛(ài)好者參考,是學(xué)習(xí)Java編程的參考資料。

作者簡(jiǎn)介

  沈澤剛,男,1964年生,渤海大學(xué)信息科學(xué)與技術(shù)學(xué)院,教授。研究方向包括程序設(shè)計(jì)方法、數(shù)據(jù)庫(kù)技術(shù)以及Web信息集成等。主要從事計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)科研及教學(xué)工作,出版專著1部,主編教材4部,近年來(lái)發(fā)表學(xué)術(shù)論文10多篇。為本科生、碩士生及留學(xué)生講授專業(yè)課程多門(mén)。

圖書(shū)目錄

部分  Java編程概述
第1章  Java 12入門(mén)知識(shí) 3
1.1  如何安裝和運(yùn)行Java 3
1.1.1  何為JDK以及為何需要JDK 4
1.1.2  Java SE的安裝 4
1.1.3  命令和實(shí)用工具 5
1.2  集成開(kāi)發(fā)環(huán)境 6
1.2.1  選擇一種IDE 6
1.2.2  安裝和配置IntelliJ IDEA 7
1.2.3  創(chuàng)建項(xiàng)目 8
1.2.4  從命令行執(zhí)行示例程序 13
1.3  Java基本類型和運(yùn)算符 14
1.3.1  boolean(布爾)類型 14
1.3.2  數(shù)值類型 14
1.3.3  基本類型的默認(rèn)值 17
1.3.4  基本類型的字面值 17
1.3.5  新增的壓縮數(shù)字格式 19
1.3.6  運(yùn)算符 19
1.4  String(字符串)類型和字面值 22
1.4.1  字符串字面值 23
1.4.2  字符串不變性 24
1.5  標(biāo)識(shí)符和變量 25
1.5.1  標(biāo)識(shí)符 25
1.5.2  變量聲明(定義)與初始化 25
1.5.3  類型持有器var 26
1.6  Java語(yǔ)句 26
1.6.1  表達(dá)式語(yǔ)句 27
1.6.2  控制流語(yǔ)句 27
本章小結(jié) 35
第2章  Java面向?qū)ο缶幊?36
2.1  OOP概念 36
2.1.1  對(duì)象/類 37
2.1.2  繼承 37
2.1.3  抽象/接口 38
2.1.4  封裝 39
2.1.5  多態(tài)性 39
2.2  類 39
2.2.1  方法 40
2.2.2  可變參數(shù)方法 41
2.2.3  構(gòu)造方法 42
2.2.4  new運(yùn)算符 44
2.2.5  java.lang.Object類 45
2.2.6  實(shí)例屬性和方法以及靜態(tài)屬性和方法 46
2.3  接口 48
2.3.1  默認(rèn)方法 49
2.3.2  私有方法 50
2.3.3  靜態(tài)字段和方法 50
2.3.4  接口與抽象類對(duì)比 50
2.4  重載、覆蓋與隱藏 51
2.4.1  重載 51
2.4.2  覆蓋 52
2.4.3  隱藏 54
2.5  final變量、final方法和final類 56
2.5.1  final變量 56
2.5.2  final方法 57
2.5.3  final類 57
2.6  多態(tài)性實(shí)戰(zhàn) 58
2.6.1  對(duì)象工廠 58
2.6.2  instanceof運(yùn)算符 60
本章小結(jié) 61
第3章  Java基礎(chǔ)知識(shí) 62
3.1  包、導(dǎo)入和訪問(wèn)修飾符 62
3.1.1  包 63
3.1.2  導(dǎo)入 63
3.1.3  訪問(wèn)修飾符 64
3.2  Java引用類型 66
3.2.1  類與接口 67
3.2.2  數(shù)組 67
3.2.3  枚舉 68
3.2.4  默認(rèn)值與字面值 70
3.2.5  引用類型作為方法參數(shù) 70
3.2.6  equals()方法 72
3.3  保留和受限關(guān)鍵字 74
3.3.1  保留關(guān)鍵字 74
3.3.2  受限關(guān)鍵字 75
3.4  this和super兩個(gè)關(guān)鍵字的用法 75
3.4.1  this關(guān)鍵字的用法 75
3.4.2  super關(guān)鍵字的用法 76
3.5  基本類型間的轉(zhuǎn)換 77
3.5.1  加寬轉(zhuǎn)換 77
3.5.2  縮窄轉(zhuǎn)換 78
3.5.3  轉(zhuǎn)換方法 78
3.6  基本類型和引用類型間的轉(zhuǎn)換 80
3.6.1  裝箱 80
3.6.2  拆箱 81
本章小結(jié) 82
第二部分  Java主要構(gòu)建單元
第4章  異常處理 85
4.1  Java異常處理框架 85
4.2  受檢型異常和非受檢型異常 86
4.3  try塊、catch塊和finally塊 88
4.4  throws語(yǔ)句 89
4.5  throw語(yǔ)句 90
4.6  assert語(yǔ)句 91
4.7  異常處理中實(shí)踐 92
本章小結(jié) 92
第5章  字符串、輸入輸出和文件 93
5.1  字符串處理 93
5.1.1  String類處理方法 93
5.1.2  String實(shí)用工具 97
5.2  I/O流 99
5.2.1  流數(shù)據(jù) 99
5.2.2  InputStream類及其子類 100
5.2.3  OutputStream類及其子類 107
5.2.4  Reader類和Writer類及其子類 109
5.2.5  java.io包中其他類 111
5.2.6  java.util.Scanner類 117
5.3  文件管理 119
5.3.1  創(chuàng)建和刪除文件和目錄 119
5.3.2  列出文件和目錄 120
5.4  Apache的FileUtils和IOUtils實(shí)用工具 121
5.4.1  FileUtils類 122
5.4.2  IOUtils類 122
本章小結(jié) 123
第6章  數(shù)據(jù)結(jié)構(gòu)、泛型和流行實(shí)用工具 124
6.1  List接口、Set接口和Map接口 124
6.1.1  泛型 125
6.1.2  如何對(duì)List和Set初始化 125
6.1.3  java.lang.Iterable接口 128
6.1.4  Collection接口 128
6.1.5  List接口 130
6.1.6  Set接口 131
6.1.7  Map接口 132
6.1.8  不可修改的集合 134
6.2  Collections實(shí)用工具 134
6.2.1  java.util.Collections類 134
6.2.2  org.apache.commons.collections4.CollectionUtils類 136
6.3  Arrays實(shí)用工具 137
6.3.1  java.util.Arrays類 137
6.3.2  org.apache.commons.lang3.ArrayUtils類 138
6.4  Objects實(shí)用工具 139
6.4.1  java.util.Objects類 139
6.4.2  org.apache.commons.long3.ObjectUtils類 142
6.5  java.time包 142
6.5.1  LocalDate類 142
6.5.2  LocalTime類 145
6.5.3  LocalDateTime類 145
6.5.4  Period類和Duration類 146
本章小結(jié) 147
第7章  Java標(biāo)準(zhǔn)庫(kù)和外部庫(kù) 148
7.1  Java類庫(kù) 148
7.1.1  java.lang包 149
7.1.2  java.util包 150
7.1.3  java.time包 150
7.1.4  java.io包和java.nio包 151
7.1.5  java.sql包和javax.sql包 151
7.1.6  java.net包 151
7.1.7  java.lang.Math類和java.math包 151
7.1.8  java.awt包、javax.swing包和javafx包 151
7.2  Java外部庫(kù) 152
7.2.1  org.junit包 152
7.2.2  org.mockito包 153
7.2.3  org.apache.log4j包和org.slf4j包 154
7.2.4  org.apache.commons包 156
本章小結(jié) 159
第8章  多線程和并發(fā)處理 160
8.1  線程與進(jìn)程對(duì)比 160
8.2  用戶線程與守護(hù)線程對(duì)比 160
8.3  Thread類的擴(kuò)展 161
8.4  Runnable接口的實(shí)現(xiàn) 162
8.5  Thread類的擴(kuò)展與Runnable接口的實(shí)現(xiàn)對(duì)比 163
8.6  線程池的使用 164
8.7  如何從線程獲得結(jié)果 169
8.8  并行處理與并發(fā)處理對(duì)比 173
8.9  相同資源的并發(fā)修改 173
8.9.1  原子變量 176
8.9.2  同步方法 177
8.9.3  同步塊 177
8.9.4  并發(fā)集合 178
8.9.5  內(nèi)存一致性錯(cuò)誤的處理 180
本章小結(jié) 180
第9章  JVM結(jié)構(gòu)和垃圾收集 181
9.1  Java應(yīng)用程序的執(zhí)行 181
9.1.1  使用IDE 181
9.1.2  從命令行運(yùn)行類 184
9.1.3  從命令行運(yùn)行JAR文件 186
9.1.4  從命令行運(yùn)行可執(zhí)行的JAR文件 187
9.2  Java進(jìn)程 187
9.2.1  類的加載 189
9.2.2  類的鏈接 190
9.2.3  類的初始化 190
9.2.4  類的實(shí)例化 190
9.2.5  方法執(zhí)行 191
9.2.6  垃圾收集 191
9.2.7  應(yīng)用程序終止 191
9.3  JVM結(jié)構(gòu) 193
9.3.1  運(yùn)行時(shí)數(shù)據(jù)區(qū) 193
9.3.2  類加載器 193
9.3.3  執(zhí)行引擎 193
9.4  垃圾收集 194
9.4.1  響應(yīng)時(shí)間、吞吐量和全局停頓 194
9.4.2  對(duì)象壽命和世代 194
9.4.3  全局停頓無(wú)法避免時(shí) 195
本章小結(jié) 195
第10章  數(shù)據(jù)庫(kù)數(shù)據(jù)管理 196
10.1  創(chuàng)建數(shù)據(jù)庫(kù) 196
10.2  創(chuàng)建數(shù)據(jù)庫(kù)結(jié)構(gòu) 197
10.3  連接到數(shù)據(jù)庫(kù) 199
10.4  關(guān)閉連接 201
10.5  數(shù)據(jù)的CRUD操作 202
10.5.1  INSERT語(yǔ)句 202
10.5.2  SELECT語(yǔ)句 202
10.5.3  UPDATE語(yǔ)句 203
10.5.4  DELETE語(yǔ)句 204
10.5.5  使用Statement接口 204
10.5.6  使用PreparedStatement接口 208
10.5.7  使用CallableStatement接口 209
本章小結(jié) 210
第11章  網(wǎng)絡(luò)編程 211
11.1  網(wǎng)絡(luò)協(xié)議 211
11.2  基于UDP的通信 212
11.3  基于TCP的通信 215
11.3.1  java.net.ServerSocket類 216
11.3.2  java.net.Socket類 218
11.3.3  示例程序的運(yùn)行 219
11.4  UDP與TCP對(duì)比 220
11.5  基于URL的通信 221
11.5.1  URL語(yǔ)法 221
11.5.2  java.net.URL類 222
11.6  使用HTTP 2客戶端API 226
11.6.1  阻塞HTTP請(qǐng)求 227
11.6.2  非阻塞(異步)HTTP請(qǐng)求 229
11.6.3  服務(wù)器推送功能 233
11.6.4  WebSocket支持 234
本章小結(jié) 235
第12章  Java GUI編程 236
12.1  Java GUI技術(shù) 236
12.2  JavaFX基礎(chǔ)知識(shí) 237
12.3  JavaFX簡(jiǎn)單編程示例 239
12.4  控件元素 241
12.5  圖表 243
12.6  CSS的應(yīng)用 244
12.7  FXML的使用 246
12.8  HTML的嵌入 250
12.9  媒體的播放 256
12.10  特效的添加 259
本章小結(jié) 266
第三部分  Java高級(jí)階段
第13章  函數(shù)式編程 269
13.1  何為函數(shù)式編程 269
13.1.1  函數(shù)式接口 271
13.1.2  lambda表達(dá)式 272
13.1.3  lambda參數(shù)的局部變量語(yǔ)法 273
13.2  標(biāo)準(zhǔn)函數(shù)式接口 274
13.2.1  Consumer接口 274
13.2.2  Predicate接口 276
13.2.3  Supplier接口 277
13.2.4  Function接口 277
13.2.5  其他標(biāo)準(zhǔn)函數(shù)式接口 279
13.3  lambda表達(dá)式的限制 279
13.4  方法引用 280
本章小結(jié) 282
第14章  Java標(biāo)準(zhǔn)流 283
14.1  流——數(shù)據(jù)源和操作源 283
14.2  流的初始化 284
14.2.1  Stream接口 284
14.2.2  Stream.Builder接口 287
14.2.3  其他類和接口 288
14.3  操作(方法) 290
14.3.1  中間操作 290
14.3.2  終止操作 293
14.4  數(shù)值流接口 308
14.4.1  創(chuàng)建流 308
14.4.2  中間操作 308
14.4.3  終止操作 310
14.5  并行流 311
14.5.1  無(wú)狀態(tài)操作和有狀態(tài)操作 311
14.5.2  順序處理還是并行處理 312
本章小結(jié) 312
第15章  反應(yīng)式編程 313
15.1  異步處理 313
15.1.1  順序流和并行流 313
15.1.2  CompletableFuture對(duì)象的使用 315
15.2  非阻塞API 316
15.2.1  java.io包與java.nio包對(duì)比 316
15.2.2  事件/運(yùn)行循環(huán) 316
15.3  反應(yīng)式體系 317
15.3.1  響應(yīng)性 318
15.3.2  復(fù)原性 318
15.3.3  靈活性 318
15.3.4  消息驅(qū)動(dòng) 318
15.4  反應(yīng)式流 319
15.5  RxJava——Java反應(yīng)式擴(kuò)展 320
15.5.1  Observable對(duì)象的劃分 321
15.5.2  Disposable對(duì)象 327
15.5.3  Observable對(duì)象的創(chuàng)建 328
15.5.4  操作符 330
15.5.5  多線程(調(diào)度器) 337
本章小結(jié) 341
第16章  微服務(wù)架構(gòu) 342
16.1  何為微服務(wù) 342
16.2  微服務(wù)架構(gòu)的規(guī)模 343
16.3  微服務(wù)架構(gòu)如何相互交流 344
16.4  微服務(wù)架構(gòu)的反應(yīng)式系統(tǒng) 346
16.4.1  HTTP服務(wù)器 346
16.4.2  EventBus消息接收器 349
16.4.3  EventBus消息發(fā)送器 350
16.4.4  反應(yīng)式系統(tǒng)演示 353
本章小結(jié) 354
第17章  Java微基準(zhǔn)測(cè)試工具 355
17.1  何為JMH 355
17.2  JMH基準(zhǔn)的創(chuàng)建 357
17.3  使用IDE插件運(yùn)行基準(zhǔn) 358
17.4  JMH基準(zhǔn)參數(shù) 361
17.4.1  模式 361
17.4.2  輸出時(shí)間單位 361
17.4.3  迭代 361
17.4.4  分叉 361
17.5  JMH使用示例 362
17.5.1  使用@State注解 363
17.5.2  使用Blackhole對(duì)象 364
17.5.3  使用@CompilerControl注解 364
17.5.4  使用@Param注解 365
17.6  告誡之語(yǔ) 365
本章小結(jié) 366
第18章  高質(zhì)量代碼編寫(xiě)實(shí)踐 367
18.1  Java行業(yè)慣用語(yǔ)、實(shí)現(xiàn)及用法 367
18.1.1  equals()方法和hashCode()方法 367
18.1.2  compareTo()方法 369
18.1.3  clone()方法 371
18.1.4  StringBuffer類和StringBuilder類 374
18.1.5  try子句、catch子句和finally子句 374
18.2  設(shè)計(jì)實(shí)踐 374
18.2.1  松耦合功能區(qū)的識(shí)別 374
18.2.2  功能區(qū)的傳統(tǒng)層劃分 374
18.2.3  接口代碼的編寫(xiě) 375
18.2.4  工廠方法的使用 375
18.2.5  寧組合勿繼承 375
18.2.6  庫(kù)的使用 375
18.3  代碼為人而寫(xiě) 375
18.4  測(cè)試——通向高質(zhì)量代碼的捷徑 376
本章小結(jié) 377
第19章  Java的特征 378
19.1  Java仍在繼續(xù)進(jìn)化 378
19.2  Panama項(xiàng)目 379
19.3  Valhalla項(xiàng)目 379
19.4  Amber項(xiàng)目 380
19.4.1  數(shù)據(jù)類 380
19.4.2  模式匹配 381
19.4.3  原字符串字面值 382
19.4.4  簡(jiǎn)潔方法體 382
19.4.5  lambda遺留 383
19.5  Loom項(xiàng)目 384
19.6  Skara項(xiàng)目 385
本章小結(jié) 385

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)