本書是“十二五”普通高等教育本科國家級規(guī)劃教材。本書全面介紹Java語言程序設計的基礎知識、運行機制、多種編程方法和技術,力求建立牢固扎實的理論基礎,系統(tǒng)、有序地進行程序設計和面向對象方法的基礎訓練;為操作系統(tǒng)、數據庫應用、網絡通信、Web應用等軟件領域的實際應用問題,提供基于Java技術的解決方案。本書主要內容包括:Java開發(fā)運行環(huán)境JDK和MyEclipse,Java語言基礎,類的封裝、繼承和多態(tài),接口、內部類和Java API,異常處理,圖形用戶界面,多線程,輸入/輸出流和文件操作,網絡通信,數據庫應用,Web應用和綜合應用設計。這些內容是構成Java應用程序的基本要素和必備知識。本書可作為普通高等學校計算機及相關專業(yè)本科的Java語言程序設計課程教材,或使用Java語言從事軟件開發(fā)人員的參考書。
葉核亞,女,南京工程學院計算機工程學院教師,畢業(yè)于南京大學。多年來一直教授"Java程序設計”、"數據結構”等課程,編寫的教材榮獲普通高等教育"十一五”國家級規(guī)劃教材、”十二五"普通高等教育本科國家級規(guī)劃教材等。
目 錄
第1章 Java概述 1
1.1 了解Java 1
1.1.1 Java的誕生和發(fā)展 1
1.1.2 Java的特點 2
1.1.3 Java核心技術 5
1.2 JDK 7
1.2.1 JDK的安裝和設置 8
1.2.2 Application應用程序的編輯、編譯和運行 10
1.2.3 包 10
1.3 MyEclipse 15
1.3.1 MyEclipse集成開發(fā)環(huán)境 15
1.3.2 Application應用程序的編輯、編譯和運行 16
1.3.3 設置MyEclipse環(huán)境屬性 18
1.3.4 設置項目屬性 20
1.3.5 程序調試技術 21
習題1 23
實驗1 Application應用程序的編輯、編譯和運行 24
第2章 Java語言基礎 25
2.1 語言成分 25
2.1.1 標識符與關鍵字 25
2.1.2 基本數據類型 26
2.1.3 變量與常量 28
2.1.4 運算符與表達式 29
2.2 流程控制語句 35
2.2.1 順序結構語句 36
2.2.2 選擇語句 36
2.2.3 循環(huán)語句 38
2.2.4 轉移語句 43
2.3 數組 44
2.3.1 一維數組 44
2.3.2 二維數組 47
2.4 靜態(tài)方法 50
2.4.1 方法聲明與調用 50
2.4.2 方法重載 51
2.4.3 參數傳遞 51
2.4.4 遞歸方法 56
2.5 字符串 57
習題2 62
實驗2 Java程序設計基礎 63
第3章 類的封裝、繼承和多態(tài) 66
3.1 類和對象 66
3.1.1 類 66
3.1.2 對象 68
3.2 類的封裝性 70
3.2.1 構造與析構 70
3.2.2 對象的引用和運算 72
3.2.3 訪問控制 73
3.2.4 靜態(tài)成員 75
3.2.5 淺拷貝與深拷貝 80
3.3 類的繼承性 83
3.3.1 由繼承派生類 83
3.3.2 繼承原則及作用 84
3.3.3 子類的構造方法 86
3.4 類的多態(tài)性 87
3.4.1 子類聲明多態(tài)成員 87
3.4.2 類型的多態(tài) 91
3.4.3 何時確定執(zhí)行哪個多態(tài)方法?怎樣執(zhí)行 91
3.4.4 多態(tài)的方法實現 93
3.5 類的抽象性 97
3.5.1 用繼承刻畫包含關系 97
3.5.2 抽象類 98
3.5.3 最終類 103
習題3 103
實驗3 類的封裝、繼承和多態(tài) 105
第4章 接口、內部類和Java API基礎 107
4.1 接口與實現接口的類 107
4.2 內部類和內部接口 113
4.3 Java API基礎 116
4.3.1 java.lang包中的基礎類庫 116
4.3.2 java.util包中的工具類庫 121
4.4 泛型** 126
習題4 129
實驗4 接口與實現接口的類 130
第5章 異常處理 132
5.1 異常處理基礎 132
5.1.1 異常處理機制的必要性 132
5.1.2 錯誤 133
5.1.3 異常 134
5.2 異常處理措施 136
5.2.1 異常處理語句 137
5.2.2 拋出異常 139
5.2.3 定義異常類 140
習題5 141
實驗5 異常的拋出、捕獲并處理 142
第6章 圖形用戶界面設計 143
6.1 AWT組件及屬性類 143
6.1.1 AWT組件 143
6.1.2 布局管理 147
6.1.3 顏色和字體 149
6.2 事件處理 149
6.2.1 委托事件模型 149
6.2.2 AWT事件類和事件監(jiān)聽器接口 154
6.3 Swing組件及事件 156
6.3.1 Swing組件和布局 156
6.3.2 文本顯示和編輯組件及事件 158
6.3.3 按鈕組件 163
6.3.4 列表框和組合框組件及事件 164
6.3.5 中間容器 166
6.3.6 定制對話框 167
6.3.7 菜單組件 175
6.3.8 表格組件 183
6.4 圖形設計 187
習題6 193
實驗6 圖形用戶界面設計 195
第7章 多線程編程 203
7.1 進程和線程 203
7.1.1 進程 203
7.1.2 線程 205
7.2 Java的線程對象 206
7.2.1 Runnable接口和Thread類 207
7.2.2 線程對象的優(yōu)先級 210
7.2.3 線程對象的生命周期 211
7.2.4 使用線程實現動畫設計 212
7.3 線程互斥和線程同步 217
7.3.1 交互線程,與時序有關的錯誤 217
7.3.2 交互線程的競爭與互斥 219
7.3.3 交互線程的協(xié)作與同步 223
習題7 234
實驗7 線程設計 235
第8章 流和文件操作 238
8.1 文件和目錄 238
8.1.1 文件 238
8.1.2 目錄 240
8.1.3 文件系統(tǒng) 241
8.2 字節(jié)流 242
8.2.1 流的概念 242
8.2.2 抽象字節(jié)流 243
8.2.3 文件字節(jié)流 244
8.2.4 數據字節(jié)流 247
8.2.5 對象字節(jié)流 252
8.2.6 管道字節(jié)流 255
8.3 字符流 259
8.3.1 字符流類 259
8.3.2 Java標準輸入、輸出 262
8.4 文件操作 263
8.4.1 文件類及其過濾器 263
8.4.2 文件選擇對話框組件 267
習題8 276
實驗8 流和文件操作 277
第9章 Socket通信 278
9.1 網絡編程基礎 278
9.2 TCP Socket通信 281
9.3 UDP Socket通信 295
9.3.1 UDP Socket點對點通信 295
9.3.2 UDP組播通信 299
習題9 304
實驗9 Socket通信 305
第10章 數據庫應用 306
10.1 關系數據庫系統(tǒng) 306
10.1.1 關系模型 306
10.1.2 客戶-服務器結構的關系數據庫系統(tǒng) 308
10.1.3 結構化查詢語言SQL 309
10.2 MySQL數據庫 313
10.2.1 安裝數據庫,啟動數據庫服務 313
10.2.2 MySQL數據庫工作臺 314
10.3 JDBC 316
10.3.1 JDBC的作用和功能 316
10.3.2 指定JDBC驅動程序 317
10.3.3 連接數據庫 318
10.3.4 執(zhí)行SQL語句 319
10.3.5 處理數據查詢結果集 320
習題10 327
實驗10 數據庫應用 327
第11章 基于JSP的Web應用 329
11.1 Web瀏覽基礎 329
11.2 JSP技術 332
11.2.1 JSP原理 332
11.2.2 運行JSP 333
11.2.3 JSP語法 338
11.2.4 基于JSP提供數據庫應用服務的Web應用 345
習題11 347
實驗11 基于JSP的Web應用設計 347
第12章 綜合應用設計 349
12.1 集合框架 349
12.1.1 集合 350
12.1.2 映射 354
12.2 反射 355
12.3 使用復雜Swing組件 356
12.3.1 BoxLayout盒式布局和Box容器 357
12.3.2 列表框 357
12.3.3 表格 362
12.3.4 多文檔界面 362
12.3.5 樹 367
12.4 數據庫應用 383
12.5 課程設計的要求和選題 398
附錄A ASCII字符與Unicode值 410
附錄B Java語言的關鍵字 411
附錄C Java基本數據類型 412
附錄D Java語言的運算符及其優(yōu)先級 413
附錄E java.lang包API(部分) 414
附錄F MyEclipse常用菜單命令 419
參考文獻 420