本書是“十二五”普通高等教育本科國家級規(guī)劃教材。本書全面介紹Java語言程序設(shè)計的基礎(chǔ)知識、運行機制、多種編程方法和技術(shù),力求建立牢固扎實的理論基礎(chǔ),系統(tǒng)、有序地進行程序設(shè)計和面向?qū)ο蠓椒ǖ幕A(chǔ)訓(xùn)練;為操作系統(tǒng)、數(shù)據(jù)庫應(yīng)用、網(wǎng)絡(luò)通信、Web應(yīng)用等軟件領(lǐng)域的實際應(yīng)用問題,提供基于Java技術(shù)的解決方案。本書主要內(nèi)容包括:Java開發(fā)運行環(huán)境JDK和MyEclipse,Java語言基礎(chǔ),類的封裝、繼承和多態(tài),接口、內(nèi)部類和Java API,異常處理,圖形用戶界面,多線程,輸入/輸出流和文件操作,網(wǎng)絡(luò)通信,數(shù)據(jù)庫應(yīng)用,Web應(yīng)用和綜合應(yīng)用設(shè)計。這些內(nèi)容是構(gòu)成Java應(yīng)用程序的基本要素和必備知識。本書可作為普通高等學(xué)校計算機及相關(guān)專業(yè)本科的Java語言程序設(shè)計課程教材,或使用Java語言從事軟件開發(fā)人員的參考書。
葉核亞,女,南京工程學(xué)院計算機工程學(xué)院教師,畢業(yè)于南京大學(xué)。多年來一直教授"Java程序設(shè)計”、"數(shù)據(jù)結(jié)構(gòu)”等課程,編寫的教材榮獲普通高等教育"十一五”國家級規(guī)劃教材、”十二五"普通高等教育本科國家級規(guī)劃教材等。
目 錄
第1章 Java概述 1
1.1 了解Java 1
1.1.1 Java的誕生和發(fā)展 1
1.1.2 Java的特點 2
1.1.3 Java核心技術(shù) 5
1.2 JDK 7
1.2.1 JDK的安裝和設(shè)置 8
1.2.2 Application應(yīng)用程序的編輯、編譯和運行 10
1.2.3 包 10
1.3 MyEclipse 15
1.3.1 MyEclipse集成開發(fā)環(huán)境 15
1.3.2 Application應(yīng)用程序的編輯、編譯和運行 16
1.3.3 設(shè)置MyEclipse環(huán)境屬性 18
1.3.4 設(shè)置項目屬性 20
1.3.5 程序調(diào)試技術(shù) 21
習(xí)題1 23
實驗1 Application應(yīng)用程序的編輯、編譯和運行 24
第2章 Java語言基礎(chǔ) 25
2.1 語言成分 25
2.1.1 標(biāo)識符與關(guān)鍵字 25
2.1.2 基本數(shù)據(jù)類型 26
2.1.3 變量與常量 28
2.1.4 運算符與表達式 29
2.2 流程控制語句 35
2.2.1 順序結(jié)構(gòu)語句 36
2.2.2 選擇語句 36
2.2.3 循環(huán)語句 38
2.2.4 轉(zhuǎn)移語句 43
2.3 數(shù)組 44
2.3.1 一維數(shù)組 44
2.3.2 二維數(shù)組 47
2.4 靜態(tài)方法 50
2.4.1 方法聲明與調(diào)用 50
2.4.2 方法重載 51
2.4.3 參數(shù)傳遞 51
2.4.4 遞歸方法 56
2.5 字符串 57
習(xí)題2 62
實驗2 Java程序設(shè)計基礎(chǔ) 63
第3章 類的封裝、繼承和多態(tài) 66
3.1 類和對象 66
3.1.1 類 66
3.1.2 對象 68
3.2 類的封裝性 70
3.2.1 構(gòu)造與析構(gòu) 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 子類的構(gòu)造方法 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)的方法實現(xiàn) 93
3.5 類的抽象性 97
3.5.1 用繼承刻畫包含關(guān)系 97
3.5.2 抽象類 98
3.5.3 最終類 103
習(xí)題3 103
實驗3 類的封裝、繼承和多態(tài) 105
第4章 接口、內(nèi)部類和Java API基礎(chǔ) 107
4.1 接口與實現(xiàn)接口的類 107
4.2 內(nèi)部類和內(nèi)部接口 113
4.3 Java API基礎(chǔ) 116
4.3.1 java.lang包中的基礎(chǔ)類庫 116
4.3.2 java.util包中的工具類庫 121
4.4 泛型** 126
習(xí)題4 129
實驗4 接口與實現(xiàn)接口的類 130
第5章 異常處理 132
5.1 異常處理基礎(chǔ) 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
習(xí)題5 141
實驗5 異常的拋出、捕獲并處理 142
第6章 圖形用戶界面設(shè)計 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 圖形設(shè)計 187
習(xí)題6 193
實驗6 圖形用戶界面設(shè)計 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 使用線程實現(xiàn)動畫設(shè)計 212
7.3 線程互斥和線程同步 217
7.3.1 交互線程,與時序有關(guān)的錯誤 217
7.3.2 交互線程的競爭與互斥 219
7.3.3 交互線程的協(xié)作與同步 223
習(xí)題7 234
實驗7 線程設(shè)計 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 數(shù)據(jù)字節(jié)流 247
8.2.5 對象字節(jié)流 252
8.2.6 管道字節(jié)流 255
8.3 字符流 259
8.3.1 字符流類 259
8.3.2 Java標(biāo)準(zhǔn)輸入、輸出 262
8.4 文件操作 263
8.4.1 文件類及其過濾器 263
8.4.2 文件選擇對話框組件 267
習(xí)題8 276
實驗8 流和文件操作 277
第9章 Socket通信 278
9.1 網(wǎng)絡(luò)編程基礎(chǔ) 278
9.2 TCP Socket通信 281
9.3 UDP Socket通信 295
9.3.1 UDP Socket點對點通信 295
9.3.2 UDP組播通信 299
習(xí)題9 304
實驗9 Socket通信 305
第10章 數(shù)據(jù)庫應(yīng)用 306
10.1 關(guān)系數(shù)據(jù)庫系統(tǒng) 306
10.1.1 關(guān)系模型 306
10.1.2 客戶-服務(wù)器結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫系統(tǒng) 308
10.1.3 結(jié)構(gòu)化查詢語言SQL 309
10.2 MySQL數(shù)據(jù)庫 313
10.2.1 安裝數(shù)據(jù)庫,啟動數(shù)據(jù)庫服務(wù) 313
10.2.2 MySQL數(shù)據(jù)庫工作臺 314
10.3 JDBC 316
10.3.1 JDBC的作用和功能 316
10.3.2 指定JDBC驅(qū)動程序 317
10.3.3 連接數(shù)據(jù)庫 318
10.3.4 執(zhí)行SQL語句 319
10.3.5 處理數(shù)據(jù)查詢結(jié)果集 320
習(xí)題10 327
實驗10 數(shù)據(jù)庫應(yīng)用 327
第11章 基于JSP的Web應(yīng)用 329
11.1 Web瀏覽基礎(chǔ) 329
11.2 JSP技術(shù) 332
11.2.1 JSP原理 332
11.2.2 運行JSP 333
11.2.3 JSP語法 338
11.2.4 基于JSP提供數(shù)據(jù)庫應(yīng)用服務(wù)的Web應(yīng)用 345
習(xí)題11 347
實驗11 基于JSP的Web應(yīng)用設(shè)計 347
第12章 綜合應(yīng)用設(shè)計 349
12.1 集合框架 349
12.1.1 集合 350
12.1.2 映射 354
12.2 反射 355
12.3 使用復(fù)雜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 數(shù)據(jù)庫應(yīng)用 383
12.5 課程設(shè)計的要求和選題 398
附錄A ASCII字符與Unicode值 410
附錄B Java語言的關(guān)鍵字 411
附錄C Java基本數(shù)據(jù)類型 412
附錄D Java語言的運算符及其優(yōu)先級 413
附錄E java.lang包API(部分) 414
附錄F MyEclipse常用菜單命令 419
參考文獻 420