目錄
源碼下載
第1章Java入門
1.1Java的地位
1.1.1網(wǎng)絡(luò)地位
1.1.2語言地位
1.1.3需求地位
1.2Java 的特點
1.2.1簡單
1.2.2面向?qū)ο?/p>
1.2.3平臺無關(guān)
1.2.4多線程
1.2.5動態(tài)
1.3安裝JDK
1.3.13種平臺簡介
1.3.2安裝Java SE平臺
1.3.3設(shè)置系統(tǒng)環(huán)境變量
1.4Java程序的開發(fā)步驟
1.5簡單的Java應(yīng)用程序
1.5.1源文件的編寫與保存
1.5.2編譯
1.5.3運行
1.5.4運行環(huán)境的選擇
1.6Java應(yīng)用程序的基本結(jié)構(gòu)
1.7注釋
1.8編程風(fēng)格
1.8.1Allmans風(fēng)格
1.8.2Kernighan風(fēng)格
1.9Java之父James Gosling
1.10小結(jié)
習(xí)題1
第2章基本數(shù)據(jù)類型、數(shù)組和枚舉類型
2.1標(biāo)識符和關(guān)鍵字
2.1.1標(biāo)識符
2.1.2關(guān)鍵字
2.2基本數(shù)據(jù)類型
2.2.1邏輯類型
2.2.2整數(shù)類型
2.2.3字符類型
2.2.4浮點類型
2.2.5基本數(shù)據(jù)類型的轉(zhuǎn)換
2.3從命令行輸入與輸出數(shù)據(jù)
2.3.1輸入基本型數(shù)據(jù)
2.3.2輸出基本型數(shù)據(jù)
2.4數(shù)組
2.4.1聲明數(shù)組
2.4.2創(chuàng)建數(shù)組
2.4.3數(shù)組元素的使用
2.4.4length的使用
2.4.5數(shù)組的初始化
2.4.6數(shù)組的引用
2.4.7數(shù)組的表示格式
2.4.8復(fù)制數(shù)組
2.4.9排序與使用二分法查找
2.5枚舉類型
2.6小結(jié)
習(xí)題2
第3章運算符、表達(dá)式和語句
3.1運算符與表達(dá)式
3.1.1算術(shù)運算符與算術(shù)表達(dá)式
3.1.2自增、自減運算符
3.1.3算術(shù)混合運算的精度
3.1.4關(guān)系運算符與關(guān)系表達(dá)式
3.1.5邏輯運算符與邏輯表達(dá)式
3.1.6賦值運算符與賦值表達(dá)式
3.1.7位運算符
3.1.8instanceof運算符
3.1.9運算符綜述
3.2語句概述
3.3條件分支語句
3.3.1if語句
3.3.2if…else語句
3.3.3if…else if…else 語句
3.4開關(guān)語句
3.5循環(huán)語句
3.5.1for循環(huán)語句
3.5.2while循環(huán)語句
3.5.3do…while循環(huán)語句
3.6break和continue語句
3.7數(shù)組與for語句
3.8枚舉類型與for、switch語句
3.9小結(jié)
習(xí)題3
第4章類與對象
4.1編程語言的幾個發(fā)展階段
4.1.1面向機器語言
4.1.2面向過程語言
4.1.3面向?qū)ο笳Z言
4.2類
4.2.1類的聲明
4.2.2類體
4.2.3成員變量和局部變量
4.2.4方法
4.2.5方法重載
4.2.6構(gòu)造方法
4.2.7類方法和實例方法
4.2.8幾個值得注意的問題
4.3對象
4.3.1構(gòu)造方法
4.3.2創(chuàng)建對象
4.3.3使用對象
4.3.4對象的引用和實體
4.4參數(shù)傳值
4.4.1基本數(shù)據(jù)類型參數(shù)的傳值
4.4.2引用類型參數(shù)的傳值
4.4.3可變參數(shù)
4.4.4有理數(shù)的類封裝
4.5對象的組合
4.6static關(guān)鍵字
4.6.1實例變量和類變量的區(qū)別
4.6.2實例方法和類方法的區(qū)別
4.7this關(guān)鍵字
4.7.1在構(gòu)造方法中使用this
4.7.2在實例方法中使用this
4.8包
4.8.1包語句
4.8.2有包名的類的存儲目錄
4.8.3運行有包名的主類
4.9import語句
4.9.1引入類庫中的類
4.9.2引入自定義包中的類
4.9.3使用無包名的類
4.9.4避免類名混淆
4.10訪問權(quán)限
4.10.1私有變量和私有方法
4.10.2公有變量和公有方法
4.10.3友好變量和友好方法
4.10.4受保護的成員變量和方法
4.10.5public類與友好類
4.11基本數(shù)據(jù)類型的類封裝
4.11.1Double和Float類
4.11.2Byte、Short、Integer和Long類
4.11.3Character類
4.11.4自動裝箱與拆箱
4.12反編譯器和文件生成器
4.12.1使用反編譯器
4.12.2使用文件生成器
4.13jar文件
4.13.1文檔性質(zhì)的jar文件
4.13.2可運行的jar文件
4.14var聲明局部變量
習(xí)題4
第5章繼承與接口
5.1子類與父類
5.2子類的繼承性
5.2.1子類和父類在同一包中的繼承性
5.2.2子類和父類不在同一包中的繼承性
5.2.3protected的進一步說明
5.3子類對象的構(gòu)造過程
5.4成員變量的隱藏和方法重寫
5.4.1成員變量的隱藏
5.4.2方法重寫
5.5super關(guān)鍵字
5.5.1使用super調(diào)用父類的構(gòu)造方法
5.5.2使用super操作被隱藏的成員變量和方法
5.6final關(guān)鍵字
5.6.1final類
5.6.2final方法
5.6.3常量
5.7對象的上轉(zhuǎn)型對象
5.8繼承與多態(tài)
5.9abstract類和方法
5.9.1abstract類的特點與理解
5.9.2abstract類與多態(tài)
5.10接口
5.10.1接口的定義與使用
5.10.2接口回調(diào)
5.10.3理解接口
5.10.4接口與多態(tài)
5.10.5abstract類與接口的比較
5.11小結(jié)
習(xí)題5
第6章內(nèi)部類、匿名類與Lambda表達(dá)式、異常類
6.1內(nèi)部類
6.2匿名類
6.2.1和類有關(guān)的匿名類
6.2.2和接口有關(guān)的匿名類
6.3Lambda表達(dá)式
6.4異常類
6.4.1try…catch語句
6.4.2自定義異常類
6.4.3finally子語句
6.5Class類
6.5.1Java反射
6.5.2使用Class實例化一個對象
6.6斷言語句
6.7小結(jié)
習(xí)題6
第7章面向?qū)ο笤O(shè)計的基本原則
7.1UML類圖簡介
7.1.1類的UML圖
7.1.2表示接口的UML圖
7.1.3泛化關(guān)系
7.1.4關(guān)聯(lián)關(guān)系
7.1.5依賴關(guān)系
7.1.6實現(xiàn)關(guān)系
7.1.7注釋
7.2面向抽象原則
7.2.1抽象類和接口
7.2.2面向抽象
7.3開閉原則
7.4多用組合、少用繼承原則
7.4.1繼承與復(fù)用
7.4.2組合與復(fù)用
7.4.3組合與繼承
7.5高內(nèi)聚低耦合原則
7.6小結(jié)
習(xí)題7
第8章設(shè)計模式
8.1設(shè)計模式簡介
8.1.1什么是設(shè)計模式
8.1.2學(xué)習(xí)設(shè)計模式的必要性
8.1.3什么是框架
8.1.4模式的分類
8.2策略模式
8.2.1策略模式的結(jié)構(gòu)
8.2.2策略模式的使用
8.2.3策略模式的優(yōu)點
8.2.4適合使用策略模式的情景
8.2.5策略模式相對繼承機制的優(yōu)勢
8.3訪問者模式
8.3.1訪問者模式的結(jié)構(gòu)
8.3.2訪問者模式的使用
8.3.3雙重分派
8.3.4訪問者模式的優(yōu)點
8.3.5適合使用訪問者模式的情景
8.4裝飾模式
8.4.1裝飾模式的結(jié)構(gòu)
8.4.2裝飾模式的使用
8.4.3使用多個裝飾者
8.4.4裝飾模式相對繼承機制的優(yōu)勢
8.4.5裝飾模式的優(yōu)點
8.4.6適合使用裝飾模式的情景
8.5適配器模式
8.5.1適配器模式的結(jié)構(gòu)
8.5.2適配器模式的使用
8.5.3適配器的適配程度
8.5.4單接口適配器
8.6工廠方法模式
8.6.1工廠方法模式的結(jié)構(gòu)
8.6.2工廠方法模式的使用
8.7責(zé)任鏈模式
8.7.1責(zé)任鏈模式的結(jié)構(gòu)
8.7.2責(zé)任鏈模式的使用
8.7.3責(zé)任鏈模式的優(yōu)點
8.7.4適合使用責(zé)任鏈模式的情景
8.8小結(jié)
習(xí)題8
第9章常用實用類
9.1String類
9.1.1構(gòu)造String對象
9.1.2String 類的常用方法
9.1.3String對象與基本數(shù)據(jù)的相互轉(zhuǎn)化
9.1.4對象的String表示
9.1.5字符序列與字符、字節(jié)數(shù)組
9.2正則表達(dá)式
9.2.1正則表達(dá)式與元字符
9.2.2常用的正則表達(dá)式
9.2.3字符序列的替換與分解
9.3StringTokenizer類
9.4Scanner類
9.5Pattern與Matcher類
9.6StringBuffer類
9.6.1StringBuffer對象的創(chuàng)建
9.6.2StringBuffer類的常用方法
9.7日期與時間
9.7.1java.time包
9.7.2日期、時間差和日歷
9.7.3日期格式化
9.8Math、BigInteger和Random類
9.8.1Math類
9.8.2BigInteger類
9.8.3Random類
9.9小結(jié)
習(xí)題9
第10章Java Swing
10.1Java Swing概述
10.2窗口
10.2.1JFrame常用方法
10.2.2菜單條、菜單、菜單項
10.3常用組件、容器與布局
10.3.1常用組件
10.3.2常用容器
10.3.3常用布局
10.4處理事件
10.4.1事件處理模式
10.4.2ActionEvent事件
10.4.3ItemEvent事件
10.4.4DocumentEvent事件
10.4.5MouseEvent事件
10.4.6焦點事件
10.4.7鍵盤事件
10.4.8窗口事件
10.4.9匿名類、適配器或窗口做監(jiān)視器
10.4.10事件的總結(jié)
10.5使用MVC結(jié)構(gòu)
10.6樹組件與表格組件
10.6.1樹組件
10.6.2表格組件
10.7將按鈕綁定到鍵盤
10.8使用中介者模式
10.9發(fā)布GUI程序
10.10小結(jié)
習(xí)題10
第11章對話框
11.1JDialog類
11.1.1JDialog類的主要方法
11.1.2對話框的模式
11.2文件對話框
11.3消息對話框
11.4輸入對話框
11.5確認(rèn)對話框
11.6顏色對話框
11.7小結(jié)
習(xí)題11
第12章輸入流與輸出流
12.1File類
12.1.1文件的屬性
12.1.2目錄
12.1.3文件的創(chuàng)建與刪除
12.1.4運行可執(zhí)行文件
12.2文件字節(jié)流
12.2.1文件字節(jié)輸入流
12.2.2文件字節(jié)輸出流
12.2.3關(guān)閉流
12.3文件字符流
12.4緩沖流
12.5使用文件對話框
12.6隨機流
12.7數(shù)組流
12.8數(shù)據(jù)流
12.9帶進度條的輸入流
12.10對象流
12.11序列化與對象克隆
12.12文件鎖
12.13使用Scanner類解析文件
12.14小結(jié)
習(xí)題12
第13章泛型與集合框架
13.1泛型
13.1.1泛型類
13.1.2使用泛型類聲明對象
13.1.3泛型接口
13.2鏈表
13.2.1LinkedListE泛型類
13.2.2LinkedListE泛型類的常用方法
13.2.3遍歷鏈表
13.3堆棧
13.4散列映射
13.4.1HashMapK,V泛型類
13.4.2HashMapK,V泛型類的常用方法
13.4.3遍歷散列映射
13.4.4基于散列映射的查詢
13.5樹集
13.5.1TreeSetE泛型類
13.5.2結(jié)點的大小關(guān)系
13.5.3TreeSet類的常用方法
13.6樹映射
13.7自動裝箱與拆箱的使用
13.8集合
13.8.1HashSetE泛型類
13.8.2常用方法
13.8.3集合的交、并與差
13.9小結(jié)
習(xí)題13
第14章JDBC與MySQL數(shù)據(jù)庫
14.1MySQL數(shù)據(jù)庫管理系統(tǒng)
14.2啟動MySQL數(shù)據(jù)庫服務(wù)器
14.3MySQL客戶端管理工具
14.4JDBC
14.5連接MySQL數(shù)據(jù)庫
14.6查詢操作
14.6.1順序查詢
14.6.2控制游標(biāo)
14.6.3條件與排序查詢
14.7更新、添加與刪除操作
14.8使用預(yù)處理語句
14.8.1預(yù)處理語句的優(yōu)點
14.8.2使用通配符
14.9通用查詢
14.10事務(wù)
14.10.1事務(wù)及處理
14.10.2JDBC事務(wù)處理步驟
14.11連接SQL Server數(shù)據(jù)庫
14.12連接內(nèi)置Derby 數(shù)據(jù)庫
14.13連接Access 數(shù)據(jù)庫
14.14注冊與登錄
14.14.1設(shè)計思路
14.14.2具體設(shè)計
14.14.3用戶程序
14.15小結(jié)
習(xí)題14
第15章Java多線程機制
15.1Java中的線程
15.1.1程序、進程與線程
15.1.2線程的狀態(tài)與生命周期
15.1.3線程的調(diào)度與優(yōu)先級
15.2用Thread的子類創(chuàng)建線程
15.3使用Runnable接口
15.3.1Runnable接口與目標(biāo)對象
15.3.2run()方法中的局部變量
15.3.3在線程中啟動其他線程
15.4線程的常用方法
15.5GUI線程
15.6線程的同步
15.7在同步方法中使用wait()、notify()和notifyAll()方法
15.8計時器線程Timer
15.9線程的聯(lián)合
15.10守護線程
15.11小結(jié)
習(xí)題15
第16章Java網(wǎng)絡(luò)基礎(chǔ)
16.1URL類
16.1.1URL的構(gòu)造方法
16.1.2讀取URL中的資源
16.1.3顯示URL資源中的HTML文件
16.1.4處理超鏈接
16.2InetAddress類
16.2.1地址的表示
16.2.2獲取地址
16.3套接字
16.3.1套接字Socket
16.3.2客戶端的套接字對象
16.3.3ServerSocket類
16.3.4把套接字連接放在一個線程中
16.4UDP數(shù)據(jù)報
16.4.1發(fā)送數(shù)據(jù)包
16.4.2接收數(shù)據(jù)包
16.5廣播數(shù)據(jù)報
16.6Java 遠(yuǎn)程調(diào)用
16.6.1遠(yuǎn)程對象
16.6.2RMI的設(shè)計細(xì)節(jié)
16.7小結(jié)
習(xí)題16
第17章基于嵌入式數(shù)據(jù)庫的單詞字典
17.1設(shè)計要求
17.2數(shù)據(jù)模型
17.3簡單測試
17.4視圖設(shè)計
17.5GUI程序
17.6程序發(fā)布
附錄本書視頻對應(yīng)二維碼匯總表
參考文獻(xiàn)