內容簡介
《Java項目驅動開發教程》是一本以項目驅動教學模式理念設計的
Java入門書。全書內容以軟體項目案例驅動,代碼實例豐富,項目實訓任務飽滿,語言通俗易懂,不僅能夠使讀者全面掌握Java面向對象編程技術,還能夠提升讀者使用Java語言開發軟體項目的能力。本書配套示例原始碼、PPT課件、教學大綱、課程設計指導書、實訓任務指導書、課後練習答案及Java核心編程參考文檔等資源。
《Java項目驅動開發教程》分為3個專題,共14章,3個專題分別以面向過程版的商超購物管理系統、面向對象版的超市購物系統、端對端聊天系統為貫穿項目,內容包括Java開發入門、Java的基本語法、Java程式流程控制、數組、Java
類和對象、Java繼承和多態、Java抽象類和接口、Java異常處理、Java圖形界面編程、Java集合、Java多執行緒、Java網路編程、Java IO流、Java反射機制。
《Java項目驅動開發教程》適合Java編程初學者系統地學習Java核心編程技術,同時也非常適合高等院校相關課程的師生作為教學參考書或教材使用。
圖書目錄
第一專題 Java語言編程基礎
第1章 Java開發入門 5
1.1 Java簡介 5
1.2 Java基礎開發環境搭建 6
1.2.1 JDK下載 6
1.2.2 安裝JDK 7
1.2.3 配置環境變數 8
1.2.4 測試是否安裝成功 8
1.3 Java編程初體驗 9
1.3.1 創建HelloWorld.java源檔案 9
1.3.2 javac命令編譯 9
1.3.3 java命令運行 10
1.4 Java帶包類的編譯和運行 10
1.4.1 修改HelloWorld.java的原始碼 10
1.4.2 通過javac命令重新編譯 10
1.4.3 通過java命令運行有包聲明的類 11
1.5 javac命令的更多參數 11
1.6 java命令的更多參數 12
1.7 main方法接收參數 13
1.8 javadoc命令 14
1.9 Java開發利器 15
1.9.1 下載Eclipse 16
1.9.2 安裝Eclipse 16
1.9.3 Eclipse中Java項目的創建 17
1.9.4 Eclipse項目的導入 19
1.9.5 在Eclipse中給main方法傳遞參數 20
1.9.6 Eclipse的快捷鍵 21
1.10 實訓1:商超購物管理系統歡迎界面 22
1.11 本章總結 22
1.12 課後練習 23
第2章 Java的基本語法 24
2.1 Java程式的基本格式 24
2.2 Java中的關鍵字 26
2.3 Java中的標識符 27
2.4 Java中的常量 28
2.5 Java中的變數 29
2.5.1 變數聲明的語法 29
2.5.2 Java中的數據類型 30
2.5.3 數據類型與默認值 31
2.5.4 成員變數與局部變數 32
2.5.5 在main方法中訪問成員變數 32
2.6 Java運算符和表達式 33
2.6.1 Java中的運算符列表 33
2.6.2 進制之間的轉換 38
2.6.3 基本類型及其包裝類型 39
2.6.4 equals方法 39
2.7 Java修飾符和包結構 40
2.7.1 Java包結構 40
2.7.2 導入包 41
2.7.3 訪問修飾符 43
2.8 實訓2:檔案創建和數據類型轉換 48
2.9 本章總結 51
2.10 課後練習 51
第3章 Java程式流程控制 53
3.1 Java分支結構 53
3.1.1 單分支語句 54
3.1.2 switch語句 54
3.2 Java循環結構 55
3.2.1 while循環 55
3.2.2 do-while循環 55
3.2.3 for循環 56
3.3 break和continue關鍵字 56
3.4 實訓3:登錄及收銀 58
3.5 本章總結 60
3.6 課後練習 60
第4章 數組 62
4.1 數組初探 62
4.1.1 創建數組 62
4.1.2 數組的維度 63
4.2 數組的遍歷 67
4.3 數組的排序 68
4.3.1 冒泡排序 69
4.3.2 直接選擇排序 69
4.3.3 插入排序 70
4.3.4 快速排序 71
4.4 數組元素的查找 72
4.5 Arrays工具類 73
4.6 實訓4:商品管理 73
4.7 本章總結 78
4.8 課後練習 78
第二專題 Java面向對象程式設計
第5章 Java類和對象 83
5.1 對象和類的概念 83
5.1.1 對象的概念 83
5.1.2 類的概念、類與對象關係 83
5.2 類與對象的定義和使用 84
5.2.1 類的設計 84
5.2.2 對象的創建和使用 85
5.3 構造函式和重載 86
5.3.1 Java中的構造函式 86
5.3.2 Java中的默認構造方法 87
5.3.3 構造方法及其重載 87
5.4 成員變數、局部變數、this關鍵字 88
5.5 實訓5:商品價格計算 90
5.6 本章總結 91
5.7 課後練習 91
第6章 Java的繼承和多態 92
6.1 Java的繼承 92
6.2 重寫 94
6.2.1 重寫toString 95
6.2.2 重寫equals 96
6.3 類型轉換 98
6.4 super關鍵字 100
6.5 多態 101
6.5.1 多態的定義 101
6.5.2 多態的實現 103
6.6 實訓6:輸出不同商品信息 106
6.7 本章總結 107
6.8 課後練習 107
第7章 Java抽象類和接口 108
7.1 Java抽象類 108
7.2 Java抽象方法 109
7.3 實訓7:簡易超市購物系統 110
7.4 接口 111
7.4.1 Java的多重繼承 113
7.4.2 通過繼承來擴展接口 114
7.4.3 接口中的常量 115
7.4.4 JDK 1.8的默認實現 115
7.5 本章總結 115
7.6 課後練習 116
第8章 Java異常處理 117
8.1 Java異常概述 117
8.2 Java異常處理方法 118
8.2.1 處理異常:try、catch和finally 118
8.2.2 try-catch-finally規則 119
8.2.3 聲明拋出異常 120
8.2.4 JDK 1.7一次捕獲多個異常 121
8.3 Java異常處理的分類 121
8.3.1 檢測異常 121
8.3.2 非檢測異常 122
8.3.3 自定義異常 122
8.4 Java異常處理的原則和忌諱 122
8.4.1 Java異常處理的原則 122
8.4.2 Java異常處理的忌諱 122
8.5 Java自定義異常 123
8.6 常見的異常 125
8.7 實訓8:商品信息查詢 126
8.8 異常的典型舉例 127
8.9 本章總結 129
8.10 課後練習 130
第9章 Java圖形界面編程 131
9.1 AWT和Swing 131
9.2 組件和容器 132
9.3 事件驅動程式設計基礎 132
9.3.1 事件、監視器和監視器註冊 132
9.3.2 實現事件處理的途徑 132
9.3.3 事件類型和監視器接口 133
9.4 界面組件 134
9.4.1 視窗 134
9.4.2 容器 135
9.4.3 標籤 137
9.4.4 按鈕 137
9.4.5 JPanel 138
9.4.6 JScrollPane 139
9.4.7 文本框 140
9.4.8 文本區 141
9.4.9 選擇框 143
9.4.10 單選框 143
9.4.11 單選按鈕 144
9.4.12 列表 144
9.4.13 組合框 145
9.4.14 選單條、選單和選單項 146
9.5 布局 148
9.5.1 FlowLayout布局 149
9.5.2 BorderLayout布局 149
9.5.3 GridLayout布局 149
9.5.4 CardLayout布局 150
9.5.5 null布局與setBounds方法 151
9.6 實訓9:超市管理系統圖形登錄界面 152
9.7 對話框 153
9.7.1 JDialog類 153
9.7.2 JOptionPane類 155
9.8 滑鼠事件 157
9.8.1 MouseListener接口 157
9.8.2 MouseMotionListener接口 160
9.9 鍵盤事件 162
9.10 本章總結 163
9.11 課後練習 163
第三專題 Java API高級編程
第10章 Java集合 169
10.1 Collection接口 169
10.1.1 AbstractCollection抽象類 170
10.1.2 Iterator接口 170
10.2 List接口 171
10.3 Set接口 173
10.3.1 Hash表 173
10.3.2 Comparable接口和Comparator接口 173
10.3.3 SortedSet接口 176
10.3.4 HashSet類和TreeSet類 176
10.4 Map接口 178
10.4.1 HashMap類和TreeMap類 179
10.4.2 LinkedHashMap類 181
10.5 本章總結 181
10.6 課後練習 181
第11章 Java多執行緒 182
11.1 執行緒與執行緒類 182
11.1.1 執行緒的概念 182
11.1.2 Thread類和Runnable接口 184
11.2 執行緒的創建 185
11.2.1 繼承Thread類並創建執行緒 185
11.2.2 實現Runnable接口並創建執行緒 186
11.3 實訓10:開啟伺服器主執行緒 187
11.4 執行緒的狀態與調度 189
11.5 執行緒狀態的改變 190
11.5.1 控制執行緒的啟動和結束 191
11.5.2 執行緒就緒和阻塞條件 192
11.6 執行緒的同步與共享 193
11.6.1 資源衝突 193
11.6.2 對象鎖的實現 194
11.6.3 執行緒間的同步控制 196
11.7 本章總結 199
11.8 課後練習 200
第12章 Java網路編程 201
12.1 兩類傳輸協定:TCP和UDP 201
12.1.1 兩者之間的比較 201
12.1.2 套用 202
12.2 基於Socket的Java網路編程 202
12.2.1 什麼是Socket 202
12.2.2 Socket通信的過程 202
12.2.3 創建Socket 203
12.3 實訓11:伺服器服務執行緒 203
12.4 簡單的Client/Server程式 205
12.5 實訓12:客戶端處理執行緒 207
12.6 Datagram通信 209
12.6.1 什麼是數據報 210
12.6.2 數據報的使用 210
12.6.3 用數據報進行廣播通信
(MulticastSocket) 211
12.7 本章總結 213
12.8 課後練習 213
第13章 Java IO流 214
13.1 輸入/輸出位元組流 214
13.1.1 InputStream類 215
13.1.2 OutputStream類 215
13.1.3 FileInputStream類 216
13.1.4 FileOutputStream類 216
13.1.5 其他輸入輸出位元組流 217
13.2 實訓13:用戶註冊功能 221
13.3 實訓14:用戶登錄功能 228
13.4 輸入/輸出字元流 233
13.4.1 字元輸入流Reader 234
13.4.2 字元輸出流Writer 235
13.4.3 轉換輸入/輸出流 236
13.5 File類 237
13.5.1 File類的對象代表檔案路徑 237
13.5.2 File類的常用方法 237
13.6 本章總結 239
13.7 課後練習 240
第14章 Java反射機制 242
14.1 獲取類的方法 242
14.2 獲取構造函式信息 243
14.3 獲取類的欄位 244
14.4 根據方法的名稱來執行方法 245
14.5 改變欄位的值 246
14.6 類載入與反射創建對象 247
14.6.1 類載入機制 247
14.6.2 通過反射創建對象及獲取對象信息 248
14.7 實訓15:添加好友和好友列表 251
14.8 實訓16:好友聊天功能 255
14.9 本章總結 258
14.10 課後練習 258
出版背景
Java語言是當今流行的面向對象程式語言之一,Java以其健壯性、安全性、可移植性等優點成為程式設計師必備的技術。隨著大數據分析和人工智慧技術的發展,市場對掌握Java語言的人才的需求量依然很大,與Java相關的就業方向很廣,但無論從事什麼方向,Java核心編程技術都是首先必須掌握的。本書圍繞3個專題,以典型案例貫穿項目展開各個專題的講解,將項目拆分為實訓任務植入各個章節,方便讀者自學以及教師開展項目驅動式教學。本書技術點全面、案例豐富,對知識點講解細緻、通俗易懂,配套講義、教材案例及貫穿項目的原始碼等資源,能夠讓讀者在學習過程中更加輕鬆。通過本書的學習,讀者不僅能夠全面掌握Java面向對象編程技術,還能夠提升使用Java語言開發軟體項目的能力。
本書特點
本書內容安排由淺入深,按編程入門、基礎語法、面向對象、高級特性的順序,逐步提高難度,符合一般讀者的學習規律。每個章節開始都有關於本章的內容簡介,概括描述本章的主要內容和學習目標,讓讀者帶著目的去讀書;章節最後都有本章總結,歸納本章的重要內容,幫助讀者形成連貫的知識體系。
本書除了配套章節知識點相關的代碼實例之外,重點引入與專題章節相關的階段性貫穿項目案例,方便讀者自學以及教師開展項目驅動式教學。
本書的案例以JDK 1.8版本編寫,這個版本也是企業開發中普遍採用的穩定版本,示例代碼能夠運行在JDK 1.8及以上版本的Java環境中。
本書作者具有豐富的企業軟體研發經驗和Java EE方向的教學培訓經驗,了解初學者學習的典型情況和容易產生混淆或疑惑的知識點,書中技術要點均以最直觀化、最易懂的方式表達出來。
本書內容
本書按照Java語言的核心編程知識和企業套用開發需求,將主要內容劃分為:Java語言編程基礎、Java面向對象程式設計、Java API高級編程三大專題。根據三個專題的主要內容設計每個專題對應的貫穿階段項目案例,項目案例貫穿整個專題的各個章節。
Java語言編程基礎專題以“面向過程版的商超購物管理系統”作為貫穿項目,包括Java開發入門、Java基本語法、Java程式流程控制和數組4章,用於夯實Java編程語法基礎。
Java面向對象程式設計專題以“面向對象版的超市購物系統”為貫穿項目,包括Java類和對象、Java繼承和多態、Java抽象類和接口、Java異常處理及Java圖形界面編程5章,為面向對象程式設計思想的理解和編程能力的提升奠定基礎。
Java API高級編程專題以“端對端聊天系統”為貫穿項目,包括Java集合、Java多執行緒、Java網路編程、IO流及Java反射機制5章,用於提升讀者套用Java API進行軟體開發的能力。
示例原始碼、PPT課件、教學大綱等資源下載
本書配套示例原始碼、PPT課件、教學大綱、課程設計指導書、實訓任務指導書、課後練習答案及Java核心編程參考文檔,需要使用微信掃描右面的二維碼獲取。閱讀過程中如果發現問題或者疑問,請傳送郵件,郵件主題寫“Java項目驅動開發教程”。
本書讀者
本書精心選取企業開發所需的、系統的Java編程核心技術,沒有額外的內容堆疊,層次清晰,實戰性強,配套資源豐富,非常適合需要全面學習Java核心編程知識的初學者,也適合高等院校相關專業師生作為教材或教學參考書使用。
作 者
2023年2月
作者簡介
遲殿委,計算機軟體與理論專業碩士,系統架構設計師。有多年企業軟體研發經驗和豐富的JavaEE、大數據技術培訓經驗,熟練掌握JavaEE與大數據全棧技術框架,擅長JavaEE系統架構設計、大數據分析與挖掘。著有圖書《Hive入門與大數據分析實戰》《Hadoop大數據分析技術》《Hadoop+Spark大數據分析實戰》《Spring Boot企業級開發實戰(視頻教學版)》《深入淺出Java編程》《Spring Boot+Spring Cloud微服務開發》。