Java程序設計與實踐
杜永生、周凱、汪亮、高玲玲 主編;蒿琳、曹曼曼、李航、李書領、陳天真 副主編
商品描述
"本書是編者基於多年教學經驗,從企業開發需求的視角出發,運用問題驅動與案例引導的方法,循序漸進地講授Java開發的實用技術,旨在助力讀者迅速掌握Java開發技術,並將其應用於實際項目。 本書共13章,從Java簡介開始,詳細講述了Java基本語法、面向對象的思想、Java中的常用類、集合、函數式編程、Stream流、枚舉、異常、I/O流、多線程、反射機制及網絡通信。同時結合每章的知識點設計相關的實踐操作,讀者可以在實踐中達到對知識的深入理解和熟練掌握。 本書既可以作為高等院校計算機及相關專業“面向對象程序設計”課程的教學用書,也可以作為職業教育的培訓用書,還可以作為軟件設計從業人員的參考用書。 "
目錄大綱
目錄
第1章Java簡介
1.1Java概述
1.1.1什麼是計算機語言
1.1.2什麼是Java語言
1.1.3Java語言的特點
1.2Java開發環境的搭建
1.2.1什麼是JDK
1.2.2安裝JDK
1.2.3配置環境變量
1.3Java的運行機制
1.3.1編寫Java源文件
1.3.2運行Java程序
1.4本章小結
1.5習題
第2章Java基本語法
2.1一個簡單的Java代碼
2.2Java中的註釋
2.3Java中的標識符
2.4Java中的數據類型
2.4.1布爾類型
2.4.2字符類型
2.4.3整數類型
2.4.4浮點類型
2.4.5BigDecimal類
2.4.6數據類型之間的轉換
2.5Java中的運算符
2.5.1算術運算符
2.5.2賦值運算符
2.5.3自增/自減運算符
2.5.4關系運算符
2.5.5邏輯運算符
2.5.6位運算符
2.5.7三目運算符
2.5.8運算符的優先級
2.6Java中的變量
2.6.1變量的分類和區別
2.6.2this關鍵字
2.6.3用var聲明局部變量
2.7流程控制語句
2.7.1順序控制
2.7.2判斷控制
2.7.3循環控制
2.8Java中的數組
2.8.1數組的基本用法
2.8.2數組復制
2.8.3數組排序
2.8.4多維數組
2.8.5引用數據類型的數組
2.9本章小結
2.10習題
第3章面向對象的思想
3.1什麼是類和對象
3.2類的定義
3.2.1類定義一般格式
3.2.2成員變量
3.2.3成員方法
3.2.4可訪問性修飾符
3.2.5常見的修飾符
3.3對象的創建和使用
3.4類的封裝
3.5類的繼承
3.5.1isa和hasa
3.5.2拓展子類
3.6構造方法
3.6.1構造方法的作用
3.6.2super()和this()
3.7多態
3.7.1向上轉型
3.7.2向下轉型
3.7.3重載和覆蓋
3.7.4abstract關鍵字
3.8單例模式
3.9內部類
3.9.1成員內部類
3.9.2靜態內部類
3.9.3局部內部類
3.9.4匿名內部類
3.10接口
3.11本章小結
3.12習題
第4章Java中的常用類
4.1String類
4.1.1String類的對象創建
4.1.2String類的常用方法
4.1.3String類的常見問題
4.2StringBuffer與StringBuilder 類
4.3Random類
4.3.1Random類的對象創建
4.3.2Random類的常用方法
4.4Object類
4.4.1clone()方法
4.4.2toString()方法
4.4.3equals()方法
4.4.4針對instanceof運算符的模式匹配
4.4.5hashCode()方法
4.5日期和時間類
4.5.1Date類
4.5.2Calendar類
4.5.3LocalDateTime類
4.6本章小結
4.7習題
第5章集合
5.1泛型
5.2包裝類
5.3集合分類
5.4List接口
5.4.1ArrayList類
5.4.2如何遍歷集合
5.4.3LinkedList類
5.5Set接口
5.5.1HashSet類
5.5.2LinkedHashSet類
5.5.3TreeSet類
5.6Map接口
5.6.1HashMap類
5.6.2Java 7.0前後HashMap底層數據的變化
5.6.3哈希函數
5.6.4LinkedHashMap類
5.6.5ConcurrentHashMap類和Hashtable類
5.7Collections工具類
5.8本章小結
5.9習題
第6章函數式編程
6.1Lambda表達式
6.2Java 8.0集合新增方法
6.3方法引用
6.3.1類名::靜態方法
6.3.2對象名::實例方法
6.3.3類名::實例方法
6.3.4類名::new
6.4四大函數式接口
6.5自定義函數式接口
6.6本章小結
6.7習題
第7章Stream流
7.1創建Stream流
7.2流的中間操作
7.3Optional類
7.3.1創建Optional類
7.3.2Optional類中的核心方法
7.4流的終端方法
7.5數字流
7.6本章小結
7.7習題
第8章枚舉
8.1Java 5.0前後定義枚舉對比
8.2Enum類
8.3values()和valueOf()方法內部機制
8.4EnumSet類
8.5EnumMap類
8.6本章小結
8.7習題
第9章異常
9.1異常的概念
9.2Exception和Error類
9.2.1編譯時異常和運行時異常
9.2.2Throwable類
9.3捕獲異常
9.4throw與throws關鍵字
9.5自定義異常
9.6多重捕獲
9.7使用finally執行清理操作
9.8trywithresources語句
9.9本章小結
9.10習題
第10章I/O流
10.1輸入流與輸出流
10.2字節流
10.2.1InputStream類核心方法
10.2.2OutputStream類核心方法
10.2.3字節流體系結構
10.2.4字節流讀寫文件
10.2.5視頻、音頻文件的復制
10.2.6裝飾器模式
10.2.7字節緩沖流
10.2.8對象流
10.3字符流
10.3.1字符流體系結構
10.3.2字符流讀寫文件
10.3.3轉換流
10.3.4字符緩沖流
10.3.5LineNumberReader類
10.4其他的流
10.4.1DataInputStream/DataOutputStream類
10.4.2ByteArrayInputStream/ByteArrayOutputStream類
10.4.3CharArrayReader/CharArrayWriter類
10.5java.nio
10.5.1Path類
10.5.2Path類中的常用方法
10.5.3獲得Path片段
10.5.4Files類中的常用方法
10.5.5walk()和walkFileTree()方法
10.5.6Files讀寫文件
10.6本章小結
10.7習題
第11章多線程
11.1什麼是進程
11.2什麼是線程
11.3創建線程的方式1
11.4線程的五大狀態
11.5線程類核心方法
11.6CountDownLatch類
11.7多線程同步
11.7.1共享資源
11.7.2線程同步
11.7.3死鎖問題
11.7.4線程通信
11.7.5再談單例模式之懶漢式
11.7.6volatile關鍵字
11.8原子類
11.9創建線程的方式2
11.10線程池
11.11並行流
11.11.1parallel()方法
11.11.2parallel()方法與線程池
11.12CompletableFuture類
11.12.1CompletableFuture類的強大之處
11.12.2創建異步任務的三種常見方式
11.12.3異步處理的方法
11.12.4異步組合的方法
11.12.5CompletableFuture類的異常處理
11.12.6異步方法中鎖的使用
11.13本章小結
11.14習題
第12章反射機制
12.1Class對象
12.2Class類核心方法
12.3Method類核心方法
12.4Field類核心方法
12.5Constructor類核心方法
12.6本章小結
12.7習題
第13章網絡通信
13.1網絡通信協議
13.2IP地址和端口號
13.3InetAddress類
13.4TCP
13.4.1ServerSocket類
13.4.2Socket類
13.4.3TCP通信示例程序
13.4.4多線程的TCP程序
13.5本章小結
13.6習題







