Java程序設計基礎與案例實戰(微課版)
李曉黎 董莎莎 李曉宇
相關主題
商品描述
Java是互聯網時代深受開發者歡迎的編程語言,廣泛應用於開發移動應用、Web應用、分佈式應用、游戲、系統服務和桌面應用等。本書系統介紹了Java程序設計的基礎知識,包括基本語法結構、函數編程、面向對象程序設計、I/O編程、網絡編程、多線程編程、數據庫編程、開發Web應用程序等。
本書註重趣味性與實用性相結合,在以講解編程技術為主線的同時,以一個具有極強趣味性的五子棋游戲的完整實現過程為輔線,將每章的重點技術應用於五子棋游戲開發,從繪制棋盤、實現落子到判斷輸贏,從單機版、網絡版到Web版,詳細講述了Java程序設計的相關知識點。為了提升讀者的編程能力,本書配套的大作業中還提供了具有人機對弈功能的五子棋游戲案例程序,供讀者參考學習與實踐。
本書既可作為電腦類專業相關課程的教材,也可供一般理工科專業的學生學習使用,還可作為程序設計和軟件開發等領域技術人員的參考用書。
作者簡介
李晓黎:
软件开发工程师,毕业于吉林大学计算机系;自2006年以来,带领团队一直从事网络管理软件、企业ERP系统和电商平台等的开发与建设工作,具有中国投资银行、国家开发银行、中信银行等多家银行从业经历,参与银行信息化建设、网银平台开发、智能合约设计与开发工作多年,在Java程序设计、系统软件开发、团队组织管理和系统架构设计等领域积累了丰富的实战经验,主编图书10余本,并被上百所高校选作教材。
目錄大綱
【章名目錄】
第 1章 概述
第 2章 基本語法結構
第3章 函數編程
第4章 面向對象程序設計
第5章 I/O編程
第6章 網絡編程
第7章 多線程編程
第8章 數據庫編程
第9章 開發Web應用程序
附錄A 上機實驗 281
附錄B 大作業 282
【詳細目錄】
第 1章 概述
1.1 初識Java 1
1.1.1 Java的特性 2
1.1.2 JVM 4
1.1.3 JRE和JDK 6
1.1.4 Java程序的運行過程 7
1.2 搭建開發環境 8
1.2.1 安裝和配置JDK 8
1.2.2 常用的Java IDE 9
1.2.3 一個簡單的Java程序 11
1.2.4 使用IDEA開發Java程序 12
1.2.5 Java註釋 15
1.3 趣味實踐:五子棋游戲概況 17
1.3.1 Java圖形用戶界面開發基礎 17
1.3.2 五子棋游戲功能簡介 20
1.3.3 開發五子棋游戲1.0版 22
1.4 本章小結 22
習題 22
第 2章 基本語法結構
2.1 常量、直接量和變量 23
2.1.1 常量 23
2.1.2 標識符與關鍵字 23
2.1.3 數據類型 24
2.1.4 枚舉類型 25
2.1.5 直接量 26
2.1.6 變量 27
2.2 運算符和表達式 29
2.2.1 運算符 29
2.2.2 表達式 33
2.3 常用語句 33
2.3.1 賦值語句 33
2.3.2 分支語句 34
2.3.3 循環語句 36
2.4 數組 39
2.4.1 一維數組 39
2.4.2 多維數組 40
2.5 趣味實踐:五子棋游戲的基本功能 41
2.5.1 繪制棋盤 41
2.5.2 其他功能的實現 43
2.6 本章小結 43
習題 43
第3章 函數編程
3.1 定義和調用函數 45
3.1.1 定義函數 45
3.1.2 調用函數 46
3.1.3 遞歸函數 47
3.2 參數和返回值 47
3.2.1 函數的參數 47
3.2.2 參數的默認值 50
3.2.3 函數的返回值 51
3.3 調試Java程序 52
3.3.1 解決bug的基本步驟 52
3.3.2 變量的作用域 53
3.3.3 設置斷點進行調試 54
3.4 趣味實踐:設計五子棋游戲中的函數 57
3.4.1 整理gobang1.1項目中的代碼 57
3.4.2 新增功能 58
3.5 本章小結 58
習題 59
第4章 面向對象程序設計
4.1 面向對象程序設計概述 60
4.1.1 面向對象程序設計的基本理念 60
4.1.2 面向對象程序設計的常用概念 61
4.2 類和對象 61
4.2.1 定義和使用類 61
4.2.2 以對象作為方法的參數和返回值 63
4.2.3 類的封裝 65
4.2.4 外部類和內部類 67
4.3 繼承 68
4.3.1 定義子類 68
4.3.2 訪問權限修飾符 69
4.3.3 super關鍵字 71
4.3.4 對象的類型轉換 72
4.3.5 最終類和靜態類 72
4.4 接口和抽象類 74
4.4.1 接口 74
4.4.2 抽象類 76
4.4.3 多態 78
4.4.4 重載 80
4.5 匿名類和Lambda表達式 80
4.5.1 匿名類 81
4.5.2 Lambda表達式 81
4.6 常用的Java類 82
4.6.1 String類 82
4.6.2 Math類 84
4.6.3 日期處理類 84
4.6.4 容器類 87
4.6.5 Java異常及處理 91
4.7 模塊化編程 93
4.7.1 模塊 93
4.7.2 包 94
4.7.3 項目管理工具Maven 95
4.8 趣味實踐:在五子棋游戲中使用自定義類 99
4.8.1 gobang1.3項目中的枚舉類型 100
4.8.2 點位類 100
4.8.3 棋子類 100
4.8.4 規則類 100
4.8.5 棋盤類 100
4.9 本章小結 100
習題 101
第5章 I/O編程
5.1 輸入流和輸出流 102
5.1.1 流的概念 102
5.1.2 流的分類 102
5.2 標準輸入/輸出編程 103
5.2.1 標準輸入流 103
5.2.2 標準輸出流 104
5.3 文件系統編程 106
5.3.1 路徑管理 107
5.3.2 操作目錄和文件 108
5.3.3 讀/寫文件 112
5.3.4 配置文件編程 121
5.3.5 記錄日誌 123
5.4 趣味實踐:使用配置文件和記錄日誌 129
5.4.1 在gobang1.4項目中使用配置文件 129
5.4.2 在gobang1.4項目中記錄日誌 129
5.5 本章小結 129
習題 130
第6章 網絡編程
6.1 IP地址編程 131
6.1.1 IP地址的結構 131
6.1.2 InetAddress類 133
6.2 URL編程 134
6.2.1 URL的格式 134
6.2.2 URL類 135
6.3 Socket編程 137
6.3.1 Socket的基本概念和工作原理 137
6.3.2 基於TCP的Socket編程 139
6.3.3 基於UDP的Socket編程 144
6.4 趣味實踐:開發網絡版五子棋游戲 148
6.4.1 gobang2.0項目的程序架構 149
6.4.2 GobangCommon模塊的程序設計 150
6.4.3 GobangServer模塊的程序設計 152
6.4.4 GobangClient模塊的程序設計 153
6.5 本章小結 155
習題 155
第7章 多線程編程
7.1 線程概述 157
7.1.1 線程的概念 157
7.1.2 線程的工作原理 157
7.1.3 線程的狀態 158
7.2 基礎線程編程 159
7.2.1 基於Thread類創建和啟動線程 160
7.2.2 操作線程 164
7.2.3 線程優先級 168
7.2.4 網絡通信中的I/O模型 168
7.2.5 線程池編程 170
7.3 線程同步機制 175
7.3.1 線程安全問題 175
7.3.2 實現線程同步的方法 177
7.3.3 死鎖 182
7.4 趣味實踐:開發游戲大廳 183
7.4.1 gobang2.1項目的程序架構及運行流程 183
7.4.2 GobangCommon模塊的程序設計 187
7.4.3 GobangServer模塊的程序設計 191
7.4.4 GobangClient模塊的程序設計 193
7.5 本章小結 195
習題 196
第8章 數據庫編程
8.1 關系數據庫基礎 198
8.1.1 關系數據庫簡介 198
8.1.2 常用的SQL語句 199
8.2 MySQL數據庫管理 200
8.2.1 數據庫管理 200
8.2.2 表管理 201
8.2.3 數據的基本操作 204
8.3 JDBC編程 208
8.3.1 JDBC的作用和工作原理 208
8.3.2 通過JDBC連接數據庫 209
8.3.3 執行SQL語句 211
8.4 趣味實踐:集成用戶管理功能的五子棋游戲 220
8.4.1 gobang2.2項目的程序架構 220
8.4.2 gobang2.2項目的新增功能 220
8.4.3 數據庫結構設計 221
8.4.4 GobangCommon模塊的程序設計 222
8.4.5 GobangServer模塊的程序設計 222
8.4.6 GobangClient模塊的程序設計 222
8.5 本章小結 224
習題 224
第9章 開發Web應用程序
9.1 Web應用編程基礎 225
9.1.1 應用程序架構 225
9.1.2 開發Web應用涉及的編程技術 226
9.2 前端技術概述 226
9.2.1 HTML概述 227
9.2.2 CSS概述 232
9.2.3 JavaScript概述 238
9.2.4 在網頁中繪圖 243
9.3 Servlet程序設計 246
9.3.1 Servlet概述 247
9.3.2 基於Servlet開發簡單的Web應用程序 248
9.3.3 HTTP Session編程 254
9.3.4 配置Servlet 255
9.3.5 Servlet過濾器 256
9.4 JSP模板引擎 257
9.4.1 JSP概述 258
9.4.2 基於Servlet+JSP開發Web應用程序 258
9.4.3 JSP腳本元素 261
9.4.4 JSP指令 262
9.4.5 MVC開發模式 263
9.5 趣味實踐:開發Web版五子棋游戲 276
9.5.1 表結構設計 276
9.5.2 gobang3.0項目的基本結構 277
9.6 本章小結 279
習題 279
附錄A 上機實驗 281
附錄B 大作業 282