Java基礎案例教程(第2版)(職教)
黑馬程序員
買這商品的人也買了...
-
$509移動 APT 威脅情報分析與數據防護
-
$305移動終端漏洞挖掘技術
-
$779$740 -
$894$849 -
$828$787 -
$523移動終端安全架構及關鍵技術
-
$479$455 -
$301Botnet 檢測原理、方法與實踐
-
$580$458 -
$539$512 -
$509HTML5 + CSS3 + JavaScript 從入門到精通
-
$880$695 -
$774$735 -
$414$393 -
$352物聯網安全
-
$534$507 -
$281Android 移動應用開發基礎教程 (微課版)
-
$474$450 -
$229電腦網絡安全 — 基於對抗視角的網絡安全攻防
-
$534$507 -
$594$564 -
$305信息安全導論
相關主題
商品描述
本書是Java入門書籍,適合初學者使用。全書共13章,第1章主要講解Java的特點與發展史、JDK的使用、Java程序的編寫與運行機制、Java開發環境的搭建等;第2~6章主要講解Java編程基礎知識,包括Java基本語法、面向對象、Java API和集合;第7~12章主要講解Java進階知識,包括I/O、多線程、網絡編程、JDBC、GUI、Java反射機制;第13章帶領讀者開發一個綜合項目——基於Java Swing的圖書管理系統,讀者能夠融會貫通所學知識,並瞭解實際項目開發流程。
本書附有配套視頻、源代碼、題庫、教學課件等資源,並提供了在線答疑,希望幫助讀者更好地學習。
本書可作為高等教育本、專科院校電腦相關專業的教材,也可作為編程愛好者的參考書。
作者簡介
黑马程序员,传智播客旗下高端IT教育品牌,它是由中国Java培训先行者张孝祥老师发起,联合全球最大的中文IT社区CSDN、中关村软件园共同创办的一家专业教育机构。办学至今,我们一直坚守着“为千万人少走弯路而著书,为中华软件之崛起而讲课”的办学理念,坚持培养优秀软件应用工程师的宏伟目标,在累计培养的十万余名学员中,其中90%的学员均已在北、上、广等一线城市高薪就业。
目錄大綱
第 1章 Java開發入門 1
1.1 Java概述 1
1.1.1 什麽是Java 1
1.1.2 Java語言的特點 2
1.1.3 Java語言的發展史 2
1.2 JDK的使用 3
1.2.1 安裝JDK 3
1.2.2 JDK目錄介紹 4
1.3 Java程序的開發 5
1.4 系統環境變量 7
1.4.1 path環境變量 7
1.4.2 classpath環境變量 9
1.5 Java程序運行機制 10
1.6 Eclipse開發工具 10
1.6.1 Eclipse概述 11
1.6.2 Eclipse的下載與啟動 11
1.6.3 使用Eclipse進行程序開發 13
1.6.4 Eclipse調試工具 17
1.7 IntelliJ IDEA開發工具 18
1.7.1 IDEA概述 19
1.7.2 IDEA的安裝與啟動 19
1.7.3 使用IDEA進行程序開發 21
1.7.4 IDEA調試工具 22
1.8 本章小結 23
1.9 本章習題 23
第 2章 Java編程基礎 24
2.1 Java基本語法 24
2.1.1 Java程序的基本格式 24
2.1.2 Java中的註釋 25
2.1.3 Java中的標識符 25
2.1.4 Java中的關鍵字 26
2.1.5 Java中的常量 27
2.2 Java中的變量 28
2.2.1 變量的定義 28
2.2.2 變量的數據類型 29
2.2.3 變量的類型轉換 30
2.2.4 變量的作用域 32
2.3 Java中的運算符 33
2.3.1 算術運算符 33
2.3.2 賦值運算符 34
2.3.3 比較運算符 35
2.3.4 邏輯運算符 36
2.3.5 運算符的優先級 37
【案例2-1】 商品入庫 38
2.4 選擇結構語句 38
2.4.1 if條件語句 38
2.4.2 三元運算符 41
2.4.3 switch條件語句 42
【案例2-2】 小明都可以買什麽 44
2.5 循環結構語句 44
2.5.1 while循環語句 44
2.5.2 do...while循環語句 45
2.5.3 for循環語句 46
2.5.4 循環嵌套 47
2.5.5 跳轉語句(break、continue) 48
【案例2-3】 超市購物程序設計 50
【案例2-4】 為新員工分配部門 50
【案例2-5】 剪刀石頭布 50
2.6 方法 50
2.6.1 什麽是方法 50
2.6.2 方法的重載 52
2.7 數組 53
2.7.1 數組的定義 53
2.7.2 數組的常見操作 56
2.7.3 二維數組 59
【案例2-6】 登錄註冊 60
【案例2-7】 抽取幸運觀眾 60
2.8 本章小結 61
2.9 本章習題 61
第3章 面向對象(上) 62
3.1 面向對象的思想 62
3.2 類與對象 63
3.2.1 類的定義 63
3.2.2 對象的創建與使用 64
3.2.3 對象的引用傳遞 66
3.2.4 訪問控制 67
3.3 封裝性 68
3.3.1 為什麽要封裝 68
3.3.2 如何實現封裝 69
【案例3-1】 基於控制台的購書系統 70
3.4 構造方法 70
3.4.1 定義構造方法 70
3.4.2 構造方法的重載 71
【案例3-2】 銀行存取款 73
【案例3-3】 查看手機配置與功能 73
3.5 this關鍵字 73
3.5.1 使用this關鍵字調用本類中的
屬性 73
3.5.2 使用this關鍵字調用成員方法 74
3.5.3 使用this關鍵字調用本類的
構造方法 74
3.6 代碼塊 75
3.6.1 普通代碼塊 75
3.6.2 構造塊 76
3.7 static關鍵字 76
3.7.1 靜態屬性 77
3.7.2 靜態方法 78
3.7.3 靜態代碼塊 79
【案例3-4】 學生投票系統 80
3.8 本章小結 80
3.9 本章習題 80
第4章 面向對象(下) 81
4.1 類的繼承 81
4.1.1 繼承的概念 81
4.1.2 方法的重寫 83
4.1.3 super關鍵字 85
4.2 final關鍵字 87
4.2.1 final關鍵字修飾類 87
4.2.2 final關鍵字修飾方法 88
4.2.3 final關鍵字修飾變量 88
4.3 抽象類和接口 89
4.3.1 抽象類 89
4.3.2 接口 90
【案例4-1】 打印不同的圖形 93
【案例4-2】 飼養員喂養動物 93
【案例4-3】 多彩的聲音 93
【案例4-4】 學生和老師 93
【案例4-5】 圖形的面積與周長計算
程序 93
【案例4-6】 研究生薪資管理 93
4.4 多態 94
4.4.1 多態概述 94
4.4.2 對象類型的轉換 95
4.4.3 instanceof關鍵字 96
【案例4-7】 經理與員工工資案例 97
【案例4-8】 模擬物流快遞系統程序
設計 97
4.5 Object類 97
4.6 內部類 98
4.6.1 成員內部類 98
4.6.2 局部內部類 99
4.6.3 靜態內部類 100
4.6.4 匿名內部類 101
4.7 異常(Exception) 101
4.7.1 什麽是異常 101
4.7.2 try…catch和finally 103
4.7.3 throws關鍵字 104
4.7.4 編譯時異常與運行時異常 106
4.7.5 自定義異常 106
4.8 本章小結 107
4.9 本章習題 107
第5章 Java API 108
5.1 字符串類 108
5.1.1 String類的初始化 108
5.1.2 String類的常見操作 109
5.1.3 StringBuffer類 113
5.1.4 StringBuilder類 115
【案例5-1】 模擬訂單號生成 116
【案例5-2】 模擬默認密碼自動生成 117
【案例5-3】 模擬用戶登錄 117
5.2 System類與Runtime類 117
5.2.1 System類 117
5.2.2 Runtime類 120
5.3 Math類與Random類 122
5.3.1 Math類 122
5.3.2 Random類 123
【案例5-4】 將字符串轉換為二進制 125
5.4 日期時間類 125
5.4.1 Instant類 126
5.4.2 LocalDate類 127
5.4.3 LocalTime類與
LocalDateTime類 129
5.4.4 Period和Duration類 130
【案例5-5】 二月天 131
5.5 包裝類 131
5.6 正則表達式 133
5.6.1 元字符 133
5.6.2 Pattern類和Matcher類 134
5.6.3 String類對正則表達式的支持 136
5.7 本章小結 137
5.8 本章習題 137
第6章 集合 138
6.1 集合概述 138
6.2 Collection接口 139
6.3 List接口 139
6.3.1 List接口簡介 139
6.3.2 ArrayList集合 140
6.3.3 LinkedList集合 141
6.3.4 Iterator接口 143
6.3.5 foreach循環 145
【案例6-1】 庫存管理系統 146
【案例6-2】 學生管理系統 146
6.4 Set接口 146
6.4.1 Set接口簡介 146
6.4.2 HashSet集合 147
6.4.3 TreeSet集合 149
【案例6-3】 模擬用戶註冊 151
6.5 Map接口 151
6.5.1 Map接口簡介 151
6.5.2 HashMap集合 152
6.5.3 TreeMap集合 155
6.5.4 Properties集合 156
【案例6-4】 鬥地主洗牌發牌 157
【案例6-5】 模擬百度翻譯 157
6.6 泛型 157
6.6.1 泛型概述 157
6.6.2 泛型類和泛型對象 158
6.6.3 泛型方法 159
6.6.4 泛型接口 160
6.6.5 類型通配符 161
6.7 JDK 8新特性—Lambda
表達式 162
6.8 本章小結 163
6.9 本章習題 163
第7章 I/O(輸入/輸出) 164
7.1 File類 164
7.1.1 創建File對象 164
7.1.2 File類的常用方法 165
7.1.3 遍歷目錄下的文件 167
7.1.4 刪除文件及目錄 169
【案例7-1】 批量操作文件管理器 170
7.2 字節流 170
7.2.1 字節流的概念 170
7.2.2 InputStream讀文件 172
7.2.3 OutputStream寫文件 173
7.2.4 文件的復制 175
7.2.5 字節緩沖流 176
【案例7-2】 商城進貨交易記錄 177
【案例7-3】 日記本 177
7.3 字符流 177
7.3.1 字符流定義及基本用法 177
7.3.2 字符流操作文件 178
7.3.3 轉換流 180
【案例7-4】 升級版日記本 181
【案例7-5】 微信投票 181
7.4 本章小結 181
7.5 本章習題 181
第8章 多線程 182
8.1 線程概述 182
8.1.1 進程 182
8.1.2 線程 183
8.2 線程的創建 183
8.2.1 繼承Thread類創建多線程 183
8.2.2 實現Runnable接口創建
多線程 185
8.2.3 兩種實現多線程方式的對比分析 186
8.3 線程的生命周期及狀態轉換 188
8.4 線程的調度 189
8.4.1 線程的優先級 189
8.4.2 線程休眠 190
【案例8-1】 龜兔賽跑 191
8.4.3 線程讓步 192
8.4.4 線程插隊 192
【案例8-2】 Svip優先辦理服務 193
8.5 多線程同步 193
8.5.1 線程安全問題 193
8.5.2 同步代碼塊 194
8.5.3 同步方法 195
8.5.4 死鎖問題 197
【案例8-3】 模擬銀行存取錢 198
【案例8-4】 工人搬磚 198
【案例8-5】 小朋友就餐 198
8.6 本章小結 198
8.7 本章習題 198
第9章 網絡編程 199
9.1 網絡通信協議 199
9.1.1 IP地址和埠號 200
9.1.2 InetAddress 201
9.1.3 UDP與TCP 201
9.2 UDP通信 202
9.2.1 DatagramPacket 203
9.2.2 DatagramSocket 203
9.2.3 UDP網絡程序 204
9.2.4 多線程的UDP網絡程序 206
【案例9-1】 模擬微信聊天 207
9.3 TCP通信 207
9.3.1 ServerSocket 207
9.3.2 Socket 208
9.3.3 簡單的TCP網絡程序 209
9.3.4 多線程的TCP網絡程序 211
【案例9-2】 字符串反轉 212
【案例9-3】 上傳文件 212
9.4 本章小結 212
9.5 本章習題 212
第 10章 JDBC 213
10.1 什麽是JDBC 213
10.2 JDBC常用API 214
10.3 實現JDBC程序 216
10.4 本章小結 220
10.5 本章習題 220
第 11章 GUI(圖形用戶界面) 221
11.1 Swing概述 221
11.2 Swing頂級容器 222
11.2.1 JFrame 222
11.2.2 JDialog 223
11.3 佈局管理器 225
11.3.1 FlowLayout 225
11.3.2 BorderLayout 227
11.3.3 GridLayout 228
11.3.4 GridBagLayout 229
11.4 事件處理機制 231
11.4.1 事件處理機制 231
11.4.2 Swing常用事件處理 232
11.5 Swing常用組件 236
11.5.1 面板組件 236
11.5.2 文本組件 238
11.5.3 標簽組件 240
11.5.4 按鈕組件 241
11.5.5 下拉框組件 245
【案例11-1】 簡易記事本 249
【案例11-2】 簡易計算器 249
【案例11-3】 模擬QQ登錄 250
11.6 本章小結 250
11.7 本章習題 250
第 12章 Java反射機制 251
12.1 反射概述 251
12.2 認識Class類 251
12.3 Class類的使用 253
12.3.1 通過無參構造實例化對象 253
12.3.2 通過有參構造實例化對象 255
12.4 反射的應用 256
12.4.1 獲取所實現的全部接口 256
12.4.2 獲取全部方法 257
12.4.3 獲取全部屬性 258
【案例12-1】 重寫toString()方法 260
【案例12-2】 速度計算 260
【案例12-3】 利用反射實現通過讀取
配置文件對類進行
實例化 260
12.5 本章小結 260
12.6 本章習題 260
第 13章 基於Java Swing的圖書
管理系統 261
13.1 項目概述 261
13.1.1 需求分析 261
13.1.2 功能結構 262
13.1.3 項目預覽 262
13.2 數據庫設計 263
13.2.1 E-R圖設計 263
13.2.2 數據表結構 264
13.3 項目環境搭建 265
13.4 實體類設計 266
13.5 工具類設計 269
13.6 用戶註冊和登錄模塊 270
13.6.1 實現用戶註冊功能 270
13.6.2 實現用戶登錄功能 273
13.7 圖書借還模塊 275
13.7.1 實現用戶借書功能 275
13.7.2 實現用戶還書功能 278
13.8 書籍管理模塊 281
13.8.1 實現書籍添加功能 281
13.8.2 實現書籍信息修改功能 283
13.9 用戶管理模塊 287
13.9.1 實現用戶信息修改功能 287
13.9.2 實現借閱信息查詢功能 290
13.10 類別管理模塊 291
13.11 本章小結 291