本書深入介紹了Java語言的基礎(chǔ)知識及其高級特性,以實(shí)例與項(xiàng)目為導(dǎo)向,幫助讀者實(shí)現(xiàn)從基礎(chǔ)知識到實(shí)踐應(yīng)用的快速飛躍。本書從Java基礎(chǔ)到綜合項(xiàng)目共分12章,內(nèi)容涵蓋Java虛擬機(jī)、數(shù)據(jù)類型、面向?qū)ο蟾呒壧匦浴⒚嫦驅(qū)ο蠓治雠c設(shè)計方法、類、接口、泛型、枚舉、異常體系、集合框架、輸入輸出流、多線程、GUI圖形用戶界面設(shè)計、JDBC和綜合項(xiàng)目實(shí)踐等。 本書從實(shí)踐性出發(fā)、以易教易學(xué)為目標(biāo),提供大量實(shí)例,每章后配有習(xí)題和習(xí)題參考答案,便于教師教學(xué)和學(xué)生自學(xué)。本書以實(shí)例與綜合項(xiàng)目為主線貫穿Java編碼規(guī)范、面向?qū)ο蠓治雠c設(shè)計方法、數(shù)組、集合、文件、多線程、Swing、JDBC等重要技術(shù),希望讀者能迅速將Java基礎(chǔ)知識應(yīng)用于項(xiàng)目實(shí)踐。本書既可作為高等院校學(xué)習(xí)Java程序設(shè)計、面向?qū)ο缶幊、Java項(xiàng)目實(shí)踐等相關(guān)課程的教材,也可作為具有一定數(shù)據(jù)庫基礎(chǔ),對管理信息系統(tǒng)開發(fā)感興趣的專業(yè)人員的參考書。
段林濤,男,博士,副教授,軟件設(shè)計師,德國不萊梅大學(xué)計算與通信技術(shù)中心人工智能研究所博士后。長期從事計算機(jī)應(yīng)用軟件研發(fā)以及嵌入式實(shí)時系統(tǒng)、綠色計算、可穿戴智能交互等理論與應(yīng)用的研究工作。
目 錄
第1章 Java語言概述 1
1.1 Java語言簡介 1
1.1.1 Java語言發(fā)展史 1
1.1.2 Java語言的特點(diǎn) 2
1.1.3 為什么學(xué)習(xí)Java語言 3
1.2 Java虛擬機(jī) 5
1.2.1 概述 5
1.2.2 JVM運(yùn)行時數(shù)據(jù)區(qū) 6
1.3 Java開發(fā)環(huán)境 7
1.3.1 JRE與JDK 7
1.3.2 開發(fā)環(huán)境的搭建 10
1.4 第一個Java應(yīng)用程序 13
1.4.1 編輯、編譯與運(yùn)行 13
1.4.2 第一個應(yīng)用程序的基本結(jié)構(gòu) 17
1.4.3 調(diào)試 18
習(xí)題1 19
第2章 數(shù)據(jù)類型與表達(dá)式 20
2.1 基本數(shù)據(jù)類型 20
2.1.1 整型類型 20
2.1.2 浮點(diǎn)類型 21
2.1.3 boolean類型 22
2.2 引用數(shù)據(jù)類型 22
2.2.1 類與對象 22
2.2.2 接口與實(shí)現(xiàn)類 23
2.2.3 數(shù)組 23
2.2.4 字符串 24
2.2.5 輸入與輸出 26
2.3 數(shù)據(jù)類型轉(zhuǎn)換 28
2.3.1 基本數(shù)據(jù)類型轉(zhuǎn)換 28
2.3.2 引用數(shù)據(jù)類型轉(zhuǎn)換 31
2.4 運(yùn)算符與表達(dá)式 32
2.4.1 操作數(shù) 33
2.4.2 算術(shù)運(yùn)算符 34
2.4.3 關(guān)系運(yùn)算符 35
2.4.4 邏輯運(yùn)算符 36
2.4.5 位運(yùn)算符 38
2.4.6 條件運(yùn)算符 39
2.4.7 賦值運(yùn)算符 39
2.4.8 語句與語句塊 40
2.5 Java編程規(guī)范 41
2.5.1 注釋 41
2.5.2 空白符 43
2.5.3 括號 43
2.5.4 命名規(guī)范 44
習(xí)題2 44
第3章 流程控制 46
3.1 程序的基本結(jié)構(gòu)概述 46
3.2 選擇結(jié)構(gòu) 46
3.2.1 if語句 47
3.2.2 switch語句 49
3.3 循環(huán)結(jié)構(gòu) 51
3.3.1 for語句 51
3.3.2 while語句 53
3.3.3 do-while語句 53
3.3.4 break與continue語句 54
習(xí)題3 57
第4章 數(shù)組 59
4.1 一維數(shù)組 59
4.1.1 數(shù)組聲明與初始化 59
4.1.2 數(shù)組訪問 60
4.2 二維數(shù)組與多維數(shù)組 61
4.2.1 數(shù)組聲明與初始化 61
4.2.2 數(shù)組訪問 63
4.3 方法調(diào)用與參數(shù)傳遞 64
4.3.1 方法 64
4.3.2 參數(shù)類型 65
4.4 數(shù)組常見操作 67
4.4.1 插入與刪除 67
4.4.2 遍歷 68
4.4.3 合并 68
4.4.4 動態(tài)擴(kuò)展 69
4.4.5 查詢 70
4.4.6 排序 70
習(xí)題4 72
第5章 類與對象 73
5.1 面向?qū)ο缶幊谈攀?73
5.2 類的定義與實(shí)例化 74
5.2.1 類路徑與包 74
5.2.2 數(shù)據(jù)與方法 77
5.2.3 訪問控制 79
5.2.4 方法重載 82
5.2.5 構(gòu)造方法 82
5.2.6 static成員 86
5.2.7 final成員 87
5.3 面向?qū)ο筇匦?88
5.3.1 封裝 88
5.3.2 繼承 89
5.3.3 多態(tài) 91
5.4 面向?qū)ο蟾呒壧匦?93
5.4.1 枚舉類型 93
5.4.2 抽象類 94
5.4.3 接口 95
5.4.4 內(nèi)部類 96
5.5 實(shí)例:圖書進(jìn)貨管理子系統(tǒng) (數(shù)組) 98
5.5.1 問題描述 98
5.5.2 系統(tǒng)功能分析 98
5.5.3 系統(tǒng)設(shè)計 99
5.5.4 系統(tǒng)實(shí)現(xiàn) 102
5.5.5 運(yùn)行 104
習(xí)題5 107
第6章 異常 108
6.1 Java異常體系 108
6.1.1 Java異常 109
6.1.2 異常類型 109
6.1.3 常見異常類 111
6.2 異常處理機(jī)制 113
6.2.1 throws子句 113
6.2.2 try-catch-finally語句 114
6.2.3 try-with-resource語句 117
6.2.4 throw語句 120
6.2.5 異常鏈 121
6.3 自定義異常 121
6.4 日志 123
習(xí)題6 126
第7章 集合框架 127
7.1 泛型 127
7.1.1 泛型類 127
7.1.2 泛型接口 128
7.1.3 泛型方法 129
7.1.4 通配符類型 130
7.2 集合框架體系 131
7.2.1 集合概述 131
7.2.2 常用接口與實(shí)現(xiàn)類 132
7.3 集合對象 134
7.3.1 Set接口及實(shí)現(xiàn)類 134
7.3.2 SortedSet接口及實(shí)現(xiàn)類 137
7.3.3 List接口及實(shí)現(xiàn)類 140
7.3.4 Queue接口及實(shí)現(xiàn)類 142
7.3.5 Deque接口及實(shí)現(xiàn)類 145
7.3.6 Map接口及實(shí)現(xiàn)類 147
7.3.7 SortedMap接口及實(shí)現(xiàn)類 149
7.4 集合工具類 150
7.4.1 Arrays 150
7.4.2 Collections 154
7.5 實(shí)例:圖書銷售管理子系統(tǒng) (集合) 156
7.5.1 問題描述 156
7.5.2 系統(tǒng)功能分析 156
7.5.3 系統(tǒng)設(shè)計 157
7.5.4 系統(tǒng)實(shí)現(xiàn) 162
7.5.5 運(yùn)行 166
習(xí)題7 169
第8章 I/O流與文件 170
8.1 流的基本概念 170
8.2 字節(jié)I/O流 171
8.2.1 InputStream類和OutputStream類 171
8.2.2 FileInputStream類和FileOutputStream類 172
8.2.3 DataInputStream類和DataOutputStream類 173
8.2.4 BufferedInputStream類和BufferedOutputStream類 175
8.2.5 ByteArrayInputStream類和ByteArrayOutputStream類 176
8.2.6 PipedInputStream類和
PipedOutputStream類 177
8.2.7 ObjectInputStream類和
ObjectOutputStream類 179
8.2.8 CipherInputStream類和
CipherOutputStream類 181
8.3 字符I/O流 182
8.3.1 Reader類和Writer類 182
8.3.2 InputStreamReader類和
OutputStreamWriter類 183
8.3.3 FileReader類和FileWriter類 184
8.3.4 BufferedReader類和
BufferedWriter類 185
8.4 文件系統(tǒng) 186
8.4.1 文件相關(guān)接口與類 186
8.4.2 文件操作示例 188
8.4.3 隨機(jī)訪問文件類 189
8.5 實(shí)例:圖書信息維護(hù)子系統(tǒng)(文件) 190
8.5.1 問題與系統(tǒng)功能描述 190
8.5.2 系統(tǒng)設(shè)計 191
8.5.3 系統(tǒng)實(shí)現(xiàn) 195
8.5.4 運(yùn)行 200
習(xí)題8 201
第9章 多線程 202
9.1 線程的基本概念 202
9.2 線程控制 203
9.2.1 線程創(chuàng)建與啟動 203
9.2.2 線程終止 204
9.2.3 線程阻塞 206
9.3 互斥與同步問題 207
9.3.1 線程互斥 208
9.3.2 線程同步 209
9.4 線程狀態(tài) 212
9.5 死鎖 213
9.6 實(shí)例:作業(yè)調(diào)度器 214
9.6.1 問題與系統(tǒng)功能描述 214
9.6.2 系統(tǒng)設(shè)計 215
9.6.3 系統(tǒng)實(shí)現(xiàn) 215
9.6.4 運(yùn)行 218
習(xí)題9 219
第10章 Swing圖形界面編程 220
10.1 AWT與Swing 220
10.2 容器與布局管理器 220
10.2.1 頂層容器 220
10.2.2 中間容器 222
10.2.3 布局管理器 227
10.3 Swing常用組件 239
10.3.1 JLabel 239
10.3.2 JButton 240
10.3.3 JComboBox 241
10.3.4 JTextField、JPasswordField和 JTextArea 243
10.3.5 JCheckBox和JRadioButton 245
10.3.6 JList 246
10.3.7 JTable 247
10.3.8 JTree 250
10.3.9 JOptionPane 253
10.4 事件偵聽與處理模型 256
10.4.1 事件 256
10.4.2 監(jiān)聽器 258
10.4.3 適配器 260
10.5 實(shí)例:圖書信息維護(hù)子系統(tǒng)(GUI) 261
10.5.1 問題與系統(tǒng)功能描述 261
10.5.2 系統(tǒng)設(shè)計 262
10.5.3 系統(tǒng)實(shí)現(xiàn) 264
10.5.4 運(yùn)行 267
習(xí)題10 269
第11章 數(shù)據(jù)庫編程 270
11.1 JDBC 270
11.2 常用接口與類 274
11.3 實(shí)例:圖書信息維護(hù)子系統(tǒng) (JDBC) 276
11.3.1 問題與系統(tǒng)功能描述 276
11.3.2 數(shù)據(jù)庫設(shè)計與實(shí)現(xiàn) 277
11.3.3 系統(tǒng)實(shí)現(xiàn) 277
習(xí)題11 281
第12章 項(xiàng)目:圖書進(jìn)銷存管理系統(tǒng)的設(shè)計與實(shí)現(xiàn) 282
12.1 問題與系統(tǒng)功能描述 282
12.1.1 項(xiàng)目描述 282
12.1.2 業(yè)務(wù)流程說明 283
12.2 系統(tǒng)設(shè)計 284
12.2.1 數(shù)據(jù)庫設(shè)計 284
12.2.2 對象設(shè)計 288
12.2.3 用戶合法性校驗(yàn)流程 291
12.2.4 基礎(chǔ)信息維護(hù)流程(以圖 書為例) 292
12.2.5 進(jìn)貨流程 292
12.2.6 銷售流程 294
12.3 系統(tǒng)實(shí)現(xiàn) 295
12.3.1 數(shù)據(jù)庫連接池 295
12.3.2 用戶登錄和注銷 296
12.3.3 圖書增刪改查 297
12.3.4 進(jìn)貨流程 299
12.3.5 銷售流程 302
12.3.6 單據(jù)明細(xì)獲取 303
12.3.7 圖書銷售排行 304
12.3.8 圖書庫存統(tǒng)計 305
12.4 運(yùn)行 305
12.4.1 系統(tǒng)登錄界面 305
12.4.2 基礎(chǔ)信息維護(hù)界面(以圖書 為例) 306
12.4.3 進(jìn)貨界面 307
12.4.4 進(jìn)貨單維護(hù)界面 307
12.4.5 銷售界面 308
12.4.6 銷售單維護(hù)界面 309
12.4.7 圖書銷售排行界面 310
12.4.8 圖書庫存統(tǒng)計界面 310
12.5 系統(tǒng)擴(kuò)展 311
參考文獻(xiàn) 312