內容簡介
本書力求做到:概念清晰但不煩瑣;例題精選而具有代表性;從實用角度與面向對象編程思維出發來提升讀者的Java套用編程能力。
本書內容全面,重點突出,通俗易懂、循序漸進、深入淺出,全書共分17章,主要內容包括Java概述、語言基礎、選擇控制、循環控制、方法、數組、對象和類、繼承和多態、抽象類和接口、Java異常處理、常用類和接口、
圖形用戶界面、檔案輸入輸出、多執行緒編程、資料庫編程、網路程式設計、JSP套用技術等。
本書每章都給出了較多的例題與套用實例,各章後有適量的習題以便於讀者學習與鞏固所學知識。
本書可作為高等院校理工科各專業“Java語言程式設計”類課程的教材,也可供參加自學考試人員、套用系統開發設計人員及其他對程式設計感興趣的讀者參閱。
圖書目錄
基礎篇
第1章 Java概述 /3
1.1 程式設計語言簡介 /3
1.2 Java語言發展簡史 /5
1.3 Java語言的特點及版本 /6
1.4 初識簡單的Java程式 /10
1.5 Java程式語法概述 /17
1.5.1 Java程式的結構特點 /17
1.5.2 Java程式的書寫規則 /17
1.5.3 Java語言字元集與辭彙 /18
1.6 JVM、JRE、JDK、API和IDE /21
1.7 Java開發環境 /22
1.7.1 如何運行Java程式 /22
1.7.2 下載JDK /23
1.7.3 JDK的具體安裝過程 /24
1.7.4 配置系統環境變數 /26
1.7.5 測試JDK是否安裝成功 /27
1.7.6 編譯命令和執行命令的用法 /28
1.7.7 集成開發環境 /29
1.8 上機實踐要求 /31
1.9 本章小結 /32
1.10 習題 /32
第2章 語言基礎 /35
2.1 Java數據類型 /35
2.1.1 基本數據類型 /35
2.1.2 引用類型 /40
2.1.3 數據類型轉化 /40
2.2 常量和變數 /42
2.2.1 常量 /42
2.2.2 變數 /43
2.2.3 變數作用域 /46
2.3 運算符和表達式 /47
2.3.5 位運算符 /50
2.3.9 instanceof運算符 /54
2.3.11 表達式計算舉例 /55
2.4 對話框輸入輸出 /56
2.4.1 String類型 /56
2.4.2 將字元串轉換為數值 /57
2.4.3 使用對話框輸入輸出 /57
2.5 本章小結 /58
2.6 習題 /58
第3章 選擇 /61
3.1 布爾(邏輯)表達式 /61
3.2 if語句 /65
3.2.1 不帶else的if語句 /65
3.2.2 帶有else的if語句 /65
3.2.3 if...else if...else語句 /66
3.2.4 if語句的嵌套 /67
3.3 switch 語句 /69
3.5 格式化控制台輸出 /71
3.6 本章小結 /72
3.7 習題 /72
第4章 循環 /75
4.1 循環語句 /76
4.1.1 while循環語句 /76
4.1.2 do...while循環語句 /77
4.1.3 for循環語句 /78
4.1.4 增強for循環語句 /79
4.2 循環的比較及其嵌套 /80
4.3 跳轉語句 /81
4.3.1 break關鍵字 /81
4.3.2 continue關鍵字 /82
4.4 套用實例 /83
4.5 本章小結 /91
4.6 習題 /92
第5章 方法 /96
5.1 方法定義 /97
5.2 方法調用 /98
5.2.1 有返回值方法 /99
5.2.2 無返回值方法 /99
5.2.3 嵌套調用 /100
5.2.4 遞歸調用 /101
5.3 方法參數傳遞 /102
5.3.1 基本數據類型參數傳遞 /102
5.3.2 引用數據類型參數傳遞 /103
5.4 方法重載 /104
5.5 變數作用域 /105
5.7 構造方法 /106
5.7.1 構造方法的定義與作用 /106
5.7.2 構造方法的重載 /108
5.8 可變參數 /109
5.9 垃圾回收機制 /110
5.9.1 finalize( )方法 /110
5.9.2 System.gc的作用 /111
5.10 模組化程式設計 /112
5.11 套用實例 /113
5.12 本章小結 /121
5.13 習題 /121
第6章 數組 /125
6.1 一維數組 /126
6.1.1 一維數組聲明 /126
6.1.2 一維數組初始化 /126
6.1.3 一維數組的引用 /127
6.1.4 一維數組的處理 /128
6.2 二維及多維數組 /129
6.2.1 二維數組聲明 /129
6.2.2 二維數組初始化 /129
6.2.3 二維數組的引用與處理 /130
6.2.4 多維數組 /131
6.3 數組為方法參數 /132
6.3.1 數組作為方法參數 /132
6.3.2 數組為方法返回值 /134
6.4 Arrays類 /134
6.5 套用實例 /134
6.6 本章小結 /141
6.7 習題 /142
核心篇
第7章 對象和類 /147
7.1 面向對象程式設計概述 /147
7.1.1 面向過程的程式設計 /147
7.1.2 面向對象的程式設計 /148
7.1.3 面向對象方法的特徵 /148
7.2 類與對象 /151
7.2.1 類的聲明 /151
7.2.2 類的實例對象及使用 /153
7.3 this引用句柄 /155
7.4 Java 修飾符 /157
7.4.1 訪問控制修飾符 /157
7.4.2 非訪問控制修飾符 /160
7.5 Java源檔案 /166
7.5.1 源檔案聲明規則 /166
7.5.2 import語句 /167
7.5.3 一個簡單的例子 /167
7.6 本章小結 /168
7.7 習題 /169
第8章 繼承和多態 /173
8.1 繼承和多態性的概念 /173
8.1.1 繼承的概述 /173
8.1.2 多態性的概述 /174
8.2 繼承機制 /175
8.2.1 繼承的定義 /175
8.2.2 繼承的傳遞性 /178
8.2.3 類中屬性的繼承與隱藏 /179
8.2.4 方法的繼承 /180
8.2.5 方法的覆蓋 /181
8.2.6 方法的重載 /183
8.2.7 super引用句柄 /185
8.2.8 implements繼承接口 /187
8.2.9 HAS-A 關係 /188
8.3 多態性 /189
8.3.1 多態性的體現 /189
8.3.2 靜態多態性 /190
8.3.3 動態多態性 /190
8.3.4 this和super指代使用和轉化 /191
8.3.5 虛方法及其舉例 /192
8.4 本章小結 /195
8.5 習題 /195
第9章 抽象類和接口 /202
9.1 抽象類 /202
9.1.1 抽象類的定義 /203
9.1.2 抽象類的使用 /204
9.1.3 抽象方法 /207
9.1.4 Java封裝 /208
9.2 接口 /209
9.2.1 Java中的接口 /209
9.2.2 接口的繼承 /212
9.2.3 接口的多重繼承 /213
9.2.4 標記接口 /213
9.3 Java包 /214
9.3.1 Java中的包 /214
9.3.2 創建包 /217
9.3.3 import關鍵字 /218
9.3.4 package的結構 /219
9.3.5 設定CLASSPATH /220
9.4 內部類 /221
9.5 匿名類 /222
9.6 本章小結 /223
9.7 習題 /223
第10章 異常處理 /228
10.1 異常的概念 /228
10.2 異常處理 /230
10.3 自定義異常 /232
10.4 本章小結 /233
10.5 習題 /234
套用篇
第11章 常用類和接口 /239
11.1 字元串處理類 /239
11.1.1 String類 /239
11.1.2 StringBuffer類 /244
11.2 時間日期類 /245
11.2.1 Date類 /246
11.2.2 Calendar類 /246
11.2.3 DateFormat類 /247
11.2.4 SimpleDateFormat類 /247
11.3 Math類 /247
11.4 隨機數類Random /248
11.5 Java 數據結構 /249
11.5.1 枚舉 /249
11.5.2 向量 /250
11.5.3 棧 /251
11.5.4 哈希表 /252
11.6 集合框架 /252
11.6.2 Set接口及其實現類 /255
11.6.3 對象排序 /257
11.6.4 List接口及其實現類 /257
11.6.6 集合的輸出 /260
11.6.7 集合的工具類Collections /262
11.7 泛型 /263
11.7.1 泛型類 /263
11.7.2 泛型方法 /264
11.8 本章小結 /266
11.9 習題 /266
12.1 引言 /267
12.2 AWT與swing /267
12.3 Java GUI API分類 /268
12.3.1 容器類 /268
12.3.2 組件類 /269
12.3.3 輔助類 /270
12.4 容器類與容器布局管理 /270
12.4.1 頂層容器 /270
12.4.2 中間容器 /272
12.4.3 布局管理器 /273
12.5 輔助類 /277
12.5.1 Color類 /278
12.5.2 Font類 /278
12.6 事件處理 /279
12.6.1 事件處理模型 /280
12.6.2 事件及監聽者 /283
12.6.3 視窗事件 /289
12.6.4 監聽器接口適配器 /290
12.6.5 鍵盤事件 /291
12.6.6 滑鼠事件 /292
12.6.7 Timer類的動畫 /293
12.7 常用swing組件 /294
12.8 選單設計 /295
12.9 本章小結 /298
12.10 習題 /298
第13章 檔案輸入輸出 /300
13.1 引言 /300
13.1.1 Java流類的層次結構 /301
13.1.2 流類的基本用法 /302
13.2 檔案類File /302
13.2.1 檔案和的概念 /302
13.2.2 檔案File類 /303
13.3 文本檔案輸入輸出 /305
13.3.1 使用PrintWriter寫數據 /306
13.3.2 使用Scanner讀數據 /307
13.4 二進制檔案輸入輸出 /309
13.4.1 二進制I/O類 /310
13.4.2 FileInputStream和FileOutputStream
/310
13.4.3 FilterInputStream和FilterOutputStream /311
13.4.4 DataInputStream和DataOutputStream /311
13.4.5 BufferedInputStream和
BufferedOutputStream /312
13.4.6 ObjectInputStream和
ObjectOutputStream /312
13.5 隨機檔案訪問 /317
13.6 本章小結 /318
13.7 習題 /318
第14章 多執行緒編程 /320
14.1 多執行緒概述 /320
14.1.1 執行緒的基本概念 /320
14.1.2 執行緒的運行機制 /320
14.2 執行緒的創建和啟動 /321
14.2.1 執行緒的創建 /321
14.2.2 執行緒的啟動 /323
14.3 執行緒狀態和轉換 /324
14.4 執行緒控制 /325
14.4.1 執行緒睡眠 /325
14.4.2 執行緒讓步 /325
14.4.3 執行緒間協作 /326
14.4.4 後台執行緒 /326
14.4.5 執行緒優先權 /327
14.5 執行緒同步處理 /327
14.5.1 多執行緒引發的問題 /327
14.5.3 同步方法 /328
14.5.4 執行緒間通信 /329
14.5.5 死鎖 /330
14.6 Thread 方法 /330
14.7 本章小結 /332
14.8 習題 /332
第15章 資料庫編程 /333
15.1 關係資料庫與SQL語言 /333
15.1.1 關係資料庫的基本概念 /333
15.1.2 數據定義語言 /333
15.1.3 數據操縱語言 /334
15.1.4 數據查詢語言 /335
15.2 Java資料庫編程簡介 /335
15.3 通過JDBC訪問資料庫 /335
15.3.1 JDBC訪問資料庫基本流程 /335
15.3.2 載入資料庫驅動程式 /336
15.3.3 創建與數據源的連線 /337
15.3.4 運算元據庫 /338
15.3.5 處理操作結果 /340
15.3.6 關閉操作 /341
15.4 JDBC編程實例 /342
15.4.1 創建資料庫連線 /342
15.4.2 創建數據表 /343
15.4.3 向表中添加數據 /343
15.4.4 修改數據 /344
15.4.5 刪除數據 /345
15.4.6 查詢數據信息 /346
15.5 JDBC事務 /346
15.6 本章小結 /349
15.7 習題 /349
第16章 網路程式設計 /350
16.1 網路通信基礎 /350
16.1.1 網路通信的基本概念 /350
16.1.3 網路程式設計技術 /352
16.2 URL程式設計 /352
16.2.1 URL和URL類 /352
16.2.2 URLConnection類 /353
16.2.3 InetAddress類 /354
16.3 TCP程式設計 /355
16.3.1 Socket 編程 /355
16.3.2 Socket類 /356
16.3.3 ServerSocket類 /358
16.4 UDP程式設計 /360
16.4.1 數據報通信基本概念 /361
16.4.2 DatagramPacket類 /361
16.4.3 DatagramSocket類 /362
16.4.4 MulticastSocket類 /362
16.5 本章小結 /363
16.6 習題 /363
第17章 JSP套用技術 /365
17.1 Java Web套用開發技術概述 /365
17.1.1 Java Web套用常見開發技術 /365
17.1.2 Java Web開發環境及開發工具 /367
17.1.3 Java Web應用程式的開發與部署 /368
17.2 靜態網頁開發技術 /369
17.2.1 HTML網頁設計 /369
17.2.3 JavaScript腳本語言 /375
17.2.4 基於HTML+JavaScript+CSS的開發
案例 /377
17.3 JSP技術 /378
17.3.1 JSP技術概述 /378
17.3.2 JSP語法 /380
17.3.3 JSP內置對象概述 /385
17.3.5 response 對象 /390
17.3.7 application對象 /393
17.3.8 out對象 /394
17.3.9 JSP應用程式設計綜合示例 /395
17.4 JavaBean技術 /398
17.4.1 JavaBean技術 /399
17.4.2 在JSP中使用JavaBean /400
17.4.3 多個JSP頁面共享JavaBean /406
17.4.4 資料庫訪問JavaBean的設計 /407
17.5 Servlet技術 /411
17.5.1 Servlet技術 /411
17.5.2 Servlet常用對象及其方法 /412
17.5.3 基於JSP+Servlet的用戶登錄驗證
/414
17.5.4 在Servlet中使用JavaBean /415
17.5.5 JSP與Servlet的數據共享 /415
17.5.6 JSP與Servlet的關聯關係 /418
17.5.7 基於JSP+Servlet+JavaBean實現複數運算 /418
17.6 本章小結 /421
17.7 習題 /421
附錄A ASCII編碼表 /422
附錄C Java運算符及其優先權 /425
參考文獻 /426