Java面向對象程序設計(第3版)-微課視頻版
內容描述
全書分為17章,分別講解了基本數據類型、枚舉和數組、運算符、表達式和語句、類、對象和接口、面向對象的幾個基本原則、重要的設計模式、常用實用類、Java Swing圖形用戶界面、對話框、Java輸入/輸出流、泛型與集合框架、JDBC數據庫操作、Java多線程機制、Java網絡基礎以及Java Applet等內容。 本書適合作為高等院校電腦專業Java語言程序設計以及面向對象語言課程的教材。
目錄大綱
目錄
源碼下載
第1章Java入門
1.1Java的地位
1.1.1網絡地位
1.1.2語言地位
1.1.3需求地位
1.2Java 的特點
1.2.1簡單
1.2.2面向對象
1.2.3平台無關
1.2.4多線程
1.2.5動態
1.3安裝JDK
1.3.13種平台簡介
1.3.2安裝Java SE平台
1.3.3設置系統環境變量
1.4Java程序的開發步驟
1.5簡單的Java應用程序
1.5.1源文件的編寫與保存
1.5.2編譯
1.5.3運行
1.5.4運行環境的選擇
1.6Java應用程序的基本結構
1.7註釋
1.8編程風格
1.8.1Allmans風格
1.8.2Kernighan風格
1.9Java之父——James Gosling
1.10小結
習題1
第2章基本數據類型、數組和枚舉類型
2.1標識符和關鍵字
2.1.1標識符
2.1.2關鍵字
2.2基本數據類型
2.2.1邏輯類型
2.2.2整數類型
2.2.3字符類型
2.2.4浮點類型
2.2.5基本數據類型的轉換
2.3從命令行輸入與輸出數據
2.3.1輸入基本型數據
2.3.2輸出基本型數據
2.4數組
2.4.1聲明數組
2.4.2創建數組
2.4.3數組元素的使用
2.4.4length的使用
2.4.5數組的初始化
2.4.6數組的引用
2.4.7數組的表示格式
2.4.8複製數組
2.4.9排序與使用二分法查找
2.5枚舉類型
2.6小結
習題2
第3章運算符、表達式和語句
3.1運算符與表達式
3.1.1算術運算符與算術表達式
3.1.2自增、自減運算符
3.1.3算術混合運算的精度
3.1.4關係運算符與關係表達式
3.1.5邏輯運算符與邏輯表達式
3.1.6賦值運算符與賦值表達式
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開關語句
3.5循環語句
3.5.1for循環語句
3.5.2while循環語句
3.5.3do…while循環語句
3.6break和continue語句
3.7數組與for語句
3.8枚舉類型與for、switch語句
3.9小結
習題3
第4章類與對象
4.1編程語言的幾個發展階段
4.1.1面向機器語言
4.1.2面向過程語言
4.1.3面向對象語言
4.2類
4.2.1類的聲明
4.2.2類體
4.2.3成員變量和局部變量
4.2.4方法
4.2.5方法重載
4.2.6構造方法
4.2.7類方法和實例方法
4.2.8幾個值得注意的問題
4.3對象
4.3.1構造方法
4.3.2創建對象
4.3.3使用對象
4.3.4對象的引用和實體
4.4參數傳值
4.4.1基本數據類型參數的傳值
4.4.2引用類型參數的傳值
4.4.3可變參數
4.4.4有理數的類封裝
4.5對象的組合
4.6static關鍵字
4.6.1實例變量和類變量的區別
4.6.2實例方法和類方法的區別
4.7this關鍵字
4.7.1在構造方法中使用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訪問權限
4.10.1私有變量和私有方法
4.10.2公有變量和公有方法
4.10.3友好變量和友好方法
4.10.4受保護的成員變量和方法
4.10.5public類與友好類
4.11基本數據類型的類封裝
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文檔性質的jar文件
4.13.2可運行的jar文件
4.14var聲明局部變量
習題4
第5章繼承與接口
5.1子類與父類
5.2子類的繼承性
5.2.1子類和父類在同一包中的繼承性
5.2.2子類和父類不在同一包中的繼承性
5.2.3protected的進一步說明
5.3子類對象的構造過程
5.4成員變量的隱藏和方法重寫
5.4.1成員變量的隱藏
5.4.2方法重寫
5.5super關鍵字
5.5.1使用super調用父類的構造方法
5.5.2使用super操作被隱藏的成員變量和方法
5.6final關鍵字
5.6.1final類
5.6.2final方法
5.6.3常量
5.7對象的上轉型對象
5.8繼承與多態
5.9abstract類和方法
5.9.1abstract類的特點與理解
5.9.2abstract類與多態
5.10接口
5.10.1接口的定義與使用
5.10.2接口回調
5.10.3理解接口
5.10.4接口與多態
5.10.5abstract類與接口的比較
5.11小結
習題5
第6章內部類、匿名類與Lambda表達式、異常類
6.1內部類
6.2匿名類
6.2.1和類有關的匿名類
6.2.2和接口有關的匿名類
6.3Lambda表達式
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小結
習題6
第7章面向對象設計的基本原則
7.1UML類圖簡介
7.1.1類的UML圖
7.1.2表示接口的UML圖
7.1.3泛化關係
7.1.4關聯關係
7.1.5依賴關係
7.1.6實現關係
7.1.7註釋
7.2面向抽象原則
7.2.1抽像類和接口
7.2.2面向抽象
7.3“開閉”原則
7.4“多用組合、少用繼承”原則
7.4.1繼承與復用
7.4.2組合與復用
7.4.3組合與繼承
7.5“高內聚低耦合”原則
7.6小結
習題7
第8章設計模式
8.1設計模式簡介
8.1.1什麼是設計模式
8.1.2學習設計模式的必要性
8.1.3什麼是框架
8.1.4模式的分類
8.2策略模式
8.2.1策略模式的結構
8.2.2策略模式的使用
8.2.3策略模式的優點
8.2.4適合使用策略模式的情景
8.2.5策略模式相對繼承機制的優勢
8.3訪問者模式
8.3.1訪問者模式的結構
8.3.2訪問者模式的使用
8.3.3雙重分派
8.3.4訪問者模式的優點
8.3.5適合使用訪問者模式的情景
8.4裝飾模式
8.4.1裝飾模式的結構
8.4.2裝飾模式的使用
8.4.3使用多個裝飾者
8.4.4裝飾模式相對繼承機制的優勢
8.4.5裝飾模式的優點
8.4.6適合使用裝飾模式的情景
8.5適配器模式
8.5.1適配器模式的結構
8.5.2適配器模式的使用
8.5.3適配器的適配程度
8.5.4單接口適配器
8.6工廠方法模式
8.6.1工廠方法模式的結構
8.6.2工廠方法模式的使用
8.7責任鏈模式
8.7.1責任鏈模式的結構
8.7.2責任鏈模式的使用
8.7.3責任鏈模式的優點
8.7.4適合使用責任鏈模式的情景
8.8小結
習題8
第9章常用實用類
9.1String類
9.1.1構造String對象
9.1.2String 類的常用方法
9.1.3String對象與基本數據的相互轉化
9.1.4對象的String表示
9.1.5字符序列與字符、字節數組
9.2正則表達式
9.2.1正則表達式與元字符
9.2.2常用的正則表達式
9.2.3字符序列的替換與分解
9.3StringTokenizer類
9.4Scanner類
9.5Pattern與Matcher類
9.6StringBuffer類
9.6.1StringBuffer對象的創建
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小結
習題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匿名類、適配器或窗口做監視器
10.4.10事件的總結
10.5使用MVC結構
10.6樹組件與表格組件
10.6.1樹組件
10.6.2表格組件
10.7將按鈕綁定到鍵盤
10.8使用中介者模式
10.9發布GUI程序
10.10小結
習題10
第11章對話框
11.1JDialog類
11.1.1JDialog類的主要方法
11.1.2對話框的模式
11.2文件對話框
11.3消息對話框
11.4輸入對話框
11.5確認對話框
11.6顏色對話框
11.7小結
習題11
第12章輸入流與輸出流
12.1File類
12.1.1文件的屬性
12.1.2目錄
12.1.3文件的創建與刪除
12.1.4運行可執行文件
12.2文件字節流
12.2.1文件字節輸入流
12.2.2文件字節輸出流
12.2.3關閉流
12.3文件字符流
12.4緩衝流
12.5使用文件對話框
12.6隨機流
12.7數組流
12.8數據流
12.9帶進度條的輸入流
12.10對象流
12.11序列化與對象克隆
12.12文件鎖
12.13使用Scanner類解析文件
12.14小結
習題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結點的大小關係
13.5.3TreeSet類的常用方法
13.6樹映射
13.7自動裝箱與拆箱的使用
13.8集合
13.8.1HashSetE泛型類
13.8.2常用方法
13.8.3集合的交、並與差
13.9小結
習題13
第14章JDBC與MySQL數據庫
14.1MySQL數據庫管理系統
14.2啟動MySQL數據庫服務器
14.3MySQL客戶端管理工具
14.4JDBC
14.5連接MySQL數據庫
14.6查詢操作
14.6.1順序查詢
14.6.2控制游標
14.6.3條件與排序查詢
14.7更新、添加與刪除操作
14.8使用預處理語句
14.8.1預處理語句的優點
14.8.2使用通配符
14.9通用查詢
14.10事務
14.10.1事務及處理
14.10.2JDBC事務處理步驟
14.11連接SQL Server數據庫
14.12連接內置Derby 數據庫
14.13連接Access 數據庫
14.14註冊與登錄
14.14.1設計思路
14.14.2具體設計
14.14.3用戶程序
14.15小結
習題14
第15章Java多線程機制
15.1Java中的線程
15.1.1程序、進程與線程
15.1.2線程的狀態與生命週期
15.1.3線程的調度與優先級
15.2用Thread的子類創建線程
15.3使用Runnable接口
15.3.1Runnable接口與目標對象
15.3.2run()方法中的局部變量
15.3.3在線程中啟動其他線程
15.4線程的常用方法
15.5GUI線程
15.6線程的同步
15.7在同步方法中使用wait()、notify()和notifyAll()方法
15.8計時器線程Timer
15.9線程的聯合
15.10守護線程
15.11小結
習題15
第16章Java網絡基礎
16.1URL類
16.1.1URL的構造方法
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數據報
16.4.1發送數據包
16.4.2接收數據包
16.5廣播數據報
16.6Java 遠程調用
16.6.1遠程對象
16.6.2RMI的設計細節
16.7小結
習題16
第17章基於嵌入式數據庫的單詞字典
17.1設計要求
17.2數據模型
17.3簡單測試
17.4視圖設計
17.5GUI程序
17.6程序發布
附錄本書視頻對應二維碼匯總表
參考文獻
作者介紹
耿祥義,1992 年7 月至1995 年7月,中國科學技術大學數學系,博士研究生畢業,獲博士學位;1995年9 月至1997年7月中山大學博士後流動站從事研究工作;1997 年7月至今大連交通大學軟件學院任教授。在清華大學出版社主編教材10餘部。《Java 2實用教程(第5版)》《Java 2實用教程(第5版)實驗指導與習題解答》《Java程序設計精編教程(第3版)-微課版》