本書是“十二五”普通高等教育本科國家級規(guī)劃教材。本書全面介紹Java語言程序設計的基礎知識、運行機制、多種編程方法和技術,力求建立牢固扎實的理論基礎,系統(tǒng)、有序地進行程序設計和面向?qū)ο蠓椒ǖ幕A訓練;為操作系統(tǒng)、數(shù)據(jù)庫應用、網(wǎng)絡通信、Web應用等軟件領域的實際應用問題,提供基于Java技術的解決方案。本書主要內(nèi)容包括:Java開發(fā)運行環(huán)境JDK和MyEclipse,Java語言基礎,類的封裝、繼承和多態(tài),接口、內(nèi)部類和Java API,異常處理,圖形用戶界面,多線程,輸入/輸出流和文件操作,網(wǎng)絡通信,數(shù)據(jù)庫應用,Web應用和綜合應用設計。這些內(nèi)容是構成Java應用程序的基本要素和必備知識。本書可作為普通高等學校計算機及相關專業(yè)本科的Java語言程序設計課程教材,或使用Java語言從事軟件開發(fā)人員的參考書。
		
	
葉核亞,女,南京工程學院計算機工程學院教師,畢業(yè)于南京大學。多年來一直教授"Java程序設計”、"數(shù)據(jù)結構”等課程,編寫的教材榮獲普通高等教育"十一五”國家級規(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  程序調(diào)試技術	21
習題1	23
實驗1  Application應用程序的編輯、編譯和運行	24
第2章  Java語言基礎	25
2.1  語言成分	25
2.1.1  標識符與關鍵字	25
2.1.2  基本數(shù)據(jù)類型	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  轉(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
習題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)的方法實現(xiàn)	93
3.5  類的抽象性	97
3.5.1  用繼承刻畫包含關系	97
3.5.2  抽象類	98
3.5.3  最終類	103
習題3	103
實驗3  類的封裝、繼承和多態(tài)	105
第4章  接口、內(nèi)部類和Java API基礎	107
4.1  接口與實現(xiàn)接口的類	107
4.2  內(nèi)部類和內(nèi)部接口	113
4.3  Java API基礎	116
4.3.1  java.lang包中的基礎類庫	116
4.3.2  java.util包中的工具類庫	121
4.4  泛型**	126
習題4	129
實驗4  接口與實現(xiàn)接口的類	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  使用線程實現(xiàn)動畫設計	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  數(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標準輸入、輸出	262
8.4  文件操作	263
8.4.1  文件類及其過濾器	263
8.4.2  文件選擇對話框組件	267
習題8	276
實驗8  流和文件操作	277
第9章  Socket通信	278
9.1  網(wǎng)絡編程基礎	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章  數(shù)據(jù)庫應用	306
10.1  關系數(shù)據(jù)庫系統(tǒng)	306
10.1.1  關系模型	306
10.1.2  客戶-服務器結構的關系數(shù)據(jù)庫系統(tǒng)	308
10.1.3  結構化查詢語言SQL	309
10.2  MySQL數(shù)據(jù)庫	313
10.2.1  安裝數(shù)據(jù)庫,啟動數(shù)據(jù)庫服務	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ù)查詢結果集	320
習題10	327
實驗10  數(shù)據(jù)庫應用	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提供數(shù)據(jù)庫應用服務的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  數(shù)據(jù)庫應用	383
12.5  課程設計的要求和選題	398
附錄A  ASCII字符與Unicode值	410
附錄B  Java語言的關鍵字	411
附錄C  Java基本數(shù)據(jù)類型	412
附錄D  Java語言的運算符及其優(yōu)先級	413
附錄E  java.lang包API(部分)	414
附錄F  MyEclipse常用菜單命令	419
參考文獻	420