Java面向?qū)ο髮?shí)用教程(第4版)
定 價(jià):49 元
- 作者:楊曉燕
- 出版時(shí)間:2019/1/1
- ISBN:9787121347153
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP312.8
- 頁碼:
- 紙張:
- 版次:
- 開本:
Java程序設(shè)計(jì)語言具有完全面向?qū)ο蟆⒑唵胃咝、與平臺無關(guān)等特點(diǎn),同時(shí)Java內(nèi)建了對網(wǎng)絡(luò)編程、數(shù)據(jù)庫連接、多線程等高級程序設(shè)計(jì)任務(wù)的支持。自1995年發(fā)布以來,Java在開發(fā)領(lǐng)域一直高歌猛進(jìn),在程序開發(fā)領(lǐng)域的地位一直位于前茅。特別在“互聯(lián)網(wǎng)+”迅速發(fā)展的今天,Java有著非常廣闊的應(yīng)用領(lǐng)域。本書基于“案例分析——知識學(xué)習(xí)——案例實(shí)現(xiàn)”和“每章案例——綜合案例”的結(jié)構(gòu),本著Java基礎(chǔ)和架構(gòu)應(yīng)用并重的原則進(jìn)行編寫,教材內(nèi)容主要包括:Java的淵源和特點(diǎn)、Java編程基礎(chǔ)、Java流程控制與算法、類的結(jié)構(gòu)及應(yīng)用、面向?qū)ο缶幊袒驹瓌t、多線程應(yīng)用、Java常用的API和GUI圖形界面等。本書中的程序在JDK 7.0中經(jīng)過驗(yàn)證,并都給出運(yùn)行結(jié)果,教材案例通過二維碼輔以微視頻進(jìn)行在線解讀。本書在編寫過程中,重要內(nèi)容注意提煉,重點(diǎn)內(nèi)容重點(diǎn)提示,使平面教材具有立體感,使讀者便于學(xué)習(xí)和理解。同時(shí)為了教師教學(xué)方便,主要的程序代碼都增加了行號。課后習(xí)題分為學(xué)習(xí)內(nèi)容“積木化”的練習(xí)和拓展研討題,并提供參考答案,每章內(nèi)容都安排實(shí)訓(xùn)內(nèi)容,便于讀者“用中學(xué),學(xué)中用”。本書既可作為大中專學(xué)校的Java程序設(shè)計(jì)的教材,又可作為Java自學(xué)者的入門用書。
楊曉燕,女,浙江萬里學(xué)院計(jì)算機(jī)與信息學(xué)院教師,編寫多部教材,榮獲寧波市首屆特色教材、浙江省高校重點(diǎn)建設(shè)教材等。
目 錄
第1章 Java概述1
1.1 Java崛起1
1.2 Java與C、C++3
1.2.1 Java和C++3
1.2.2 Java與C3
1.3 Java語言特點(diǎn)及更新5
1.4 Java程序的類型及其不同的編程模式6
1.5 Java開發(fā)工具入門8
1.5.1 JDK的下載、安裝8
1.5.2 配置環(huán)境變量9
1.5.3 JDK開發(fā)工具簡介11
1.6 Java程序開發(fā)過程11
1.7 實(shí)訓(xùn)18
習(xí)題118
問題探究118
第2章 Java編程基礎(chǔ)20
2.1 標(biāo)識符、關(guān)鍵字和分隔符20
2.1.1 標(biāo)識符和關(guān)鍵字20
2.1.2 分隔符21
2.2 數(shù)據(jù)類型22
2.2.1 基本數(shù)據(jù)類型23
2.2.2 常量和變量24
2.3 運(yùn)算符與表達(dá)式26
2.3.1 算術(shù)運(yùn)算符26
2.3.2 賦值運(yùn)算符27
2.3.3 關(guān)系運(yùn)算符28
2.3.4 邏輯運(yùn)算符29
2.3.5 條件運(yùn)算符29
2.3.6 其他運(yùn)算符30
2.3.7 運(yùn)算符的優(yōu)先級30
2.4 Scanner鍵盤輸入30
2.5 案例實(shí)現(xiàn)33
習(xí)題233
問題探究234
第3章 程序流程控制結(jié)構(gòu)和方法36
3.1 語句和程序流程控制結(jié)構(gòu)36
3.2 選擇結(jié)構(gòu)37
3.2.1 選擇語句37
3.2.2 多選擇結(jié)構(gòu)switch語句41
3.3 循環(huán)結(jié)構(gòu)44
3.3.1 三種循環(huán)語句44
3.3.2 循環(huán)程序結(jié)構(gòu)小結(jié)48
3.3.3 循環(huán)嵌套與continue、break語句48
3.4 算法設(shè)計(jì)*51
3.4.1 迭代算法51
3.4.2 窮舉算法52
3.4.3 遞歸算法54
3.5 案例實(shí)現(xiàn)55
習(xí)題355
問題探究356
第4章 數(shù)組57
4.1 數(shù)組的基本概念57
4.2 一維數(shù)組58
4.2.1 一維數(shù)組的聲明58
4.2.2 一維數(shù)組內(nèi)存申請58
4.2.3 一維數(shù)組的初始化59
4.2.4 測定數(shù)組的長度60
4.2.5 for each語句與數(shù)組61
4.3 二維數(shù)組62
4.3.1 認(rèn)識二維數(shù)組62
4.3.2 二維數(shù)組的聲明與創(chuàng)建63
4.3.3 二維數(shù)組元素的初始化64
4.3.4 二維數(shù)組的引用65
4.4 案例實(shí)現(xiàn)*(課外研學(xué))67
習(xí)題470
問題探究471
第5章 Java類和對象73
5.1 面向?qū)ο缶幊?3
5.2 類的描述76
5.2.1 類的定義76
5.2.2 成員變量的訪問控制符78
5.2.3 成員方法79
5.2.4 成員變量和局部變量81
5.2.5 final變量82
5.3 對象的創(chuàng)建與使用82
5.3.1 對象的創(chuàng)建82
5.3.2 對象的比較84
5.3.3 對象的使用85
5.3.4 釋放對象89
5.3.5 Java變量內(nèi)存分配89
5.3.6 匿名對象90
5.4 類的構(gòu)造方法91
5.4.1 構(gòu)造方法的作用和定義91
5.4.2 this引用93
5.5 static變量及static方法99
5.5.1 static變量99
5.5.2 static方法100
5.6 對象初始化過程103
5.7 成員方法106
5.7.1 方法調(diào)用與參數(shù)傳遞方式106
5.7.2 方法重載111
5.7.3 final最終方法和abstract抽象方法113
5.8 復(fù)雜程序解決方案和方法113
5.9 案例實(shí)現(xiàn)117
習(xí)題5120
問題探究5123
第6章 類的繼承和接口126
6.1 類的繼承126
6.1.1 繼承的概念126
6.1.2 創(chuàng)建子類127
6.1.3 關(guān)于父類的構(gòu)造方法128
6.2 成員變量的隱藏和成員方法的重構(gòu)131
6.3 抽象類133
6.4 接口135
6.4.1 接口概述135
6.4.2 接口的定義136
6.4.3 實(shí)現(xiàn)接口的類定義136
6.4.4 接口的多態(tài)性139
6.4.5 Java 8接口擴(kuò)展方法141
6.5 泛型142
6.5.1 泛型的概念和泛型類的聲明142
6.5.2 泛型應(yīng)用142
6.6 案例實(shí)現(xiàn)144
習(xí)題6148
問題探究6149
第7章 Java API初步150
7.1 Java SE API官網(wǎng)下載150
7.2 Java輸入/輸出151
7.2.1 標(biāo)準(zhǔn)輸出方法151
7.2.2 命令行參數(shù)輸入法的應(yīng)用153
7.2.3 流式交互輸入/輸出的應(yīng)用154
7.2.4 Java I/O基本模型155
7.2.5 文件數(shù)據(jù)的讀/寫157
7.2.6 JOptionPane對話框輸入法159
7.3 字符串類160
7.3.1 創(chuàng)建String對象161
7.3.2 創(chuàng)建StringBuffer對象162
7.3.3 正則表達(dá)式與模式匹配實(shí)例163
7.3.4 Java中正則表達(dá)式常用的語法164
7.3.5 模式匹配方法164
7.4 顏色類與圖形繪制類166
7.4.1 圖形的顏色控制166
7.4.2 類Graphics的基本圖形167
7.5 集合ArrayList170
7.5.1 集合概述170
7.5.2 類ArrayList的應(yīng)用171
7.5.3 ArrayList的綜合應(yīng)用174
7.5.4 類Arrays175
7.6 Java 8新特性*177
7.7 Java 9 入門體驗(yàn)178
7.8 案例實(shí)現(xiàn)*(課外研學(xué))181
習(xí)題7182
問題探究7183
第8章 包和異常185
8.1 包185
8.1.1 創(chuàng)建包186
8.1.2 類的包外引用187
8.2 異常處理189
8.2.1 異常的基本概念190
8.2.2 異常處理機(jī)制193
8.2.3 自定義異常類197
8.2.4 GUI應(yīng)用程序的異常處理198
8.3 案例實(shí)現(xiàn)200
習(xí)題8203
問題探究8203
第9章 面向?qū)ο蟪绦蛟O(shè)計(jì)的基本原則及初步設(shè)計(jì)模式*204
9.1 UML類圖204
9.1.1 類的UML圖205
9.1.2 UML接口表示205
9.1.3 UML依賴關(guān)系205
9.1.4 UML關(guān)聯(lián)關(guān)系206
9.1.5 UML聚合關(guān)系206
9.1.6 UML組合關(guān)系207
9.1.7 泛化關(guān)系207
9.1.8 實(shí)現(xiàn)關(guān)系208
9.2 面向?qū)ο蟪绦蛟O(shè)計(jì)的基本原則209
9.2.1 發(fā)現(xiàn)變化,封裝變化209
9.2.2 單一職責(zé)原則和最少知識原則212
9.2.3 開放—封閉原則212
9.2.4 子類型能夠替換基類型原則213
9.2.5 合成/聚合復(fù)用原則215
9.3 案例實(shí)現(xiàn)215
習(xí)題9219
問題探究9219
第10章 圖形用戶界面221
10.1 圖形用戶界面概述221
10.1.1 圖形用戶界面組件221
10.1.2 組件分類222
10.1.3 常用容器類的應(yīng)用223
10.2 事件處理227
10.2.1 基本概念227
10.2.2 事件處理機(jī)制229
10.2.3 事件處理的實(shí)現(xiàn)方式230
10.2.4 適配器類234
10.3 一般組件237
10.3.1 標(biāo)簽237
10.3.2 按鈕237
10.3.3 文本框238
10.3.4 文本區(qū)238
10.3.5 列表框240
10.3.6 滾動(dòng)窗格242
10.3.7 復(fù)選框和單選按鈕243
10.3.8 滑動(dòng)條245
10.4 菜單與對話框250
10.4.1 創(chuàng)建菜單250
10.4.2 彈出式菜單254
10.4.3 對話框255
10.5 布局管理器*260
10.5.1 順序布局261
10.5.2 邊界布局261
10.5.3 網(wǎng)格布局262
10.5.4 卡片布局263
10.5.5 手工布局264
10.6 JApplet類的使用265
10.7 Java事件類方法列表266
10.8 案例實(shí)現(xiàn)267
習(xí)題10271
問題探究10274
第11章 多線程275
11.1 多線程概述275
11.1.1 基本概念276
11.1.2 線程的狀態(tài)與生命周期277
11.1.3 線程的調(diào)度與優(yōu)先級279
11.2 創(chuàng)建和運(yùn)行線程279
11.2.1 利用Thread類創(chuàng)建線程280
11.2.2 用Runnable接口創(chuàng)建線程282
11.3 線程間的數(shù)據(jù)共享284
11.4 多線程的同步控制*287
11.4.1 線程同步相關(guān)概念287
11.4.2 synchronized應(yīng)用289
11.4.3 synchronized的進(jìn)一步說明292
11.5 案例實(shí)現(xiàn)293
習(xí)題11295
問題探究11296
第12章 綜合案例——聊天通信298
12.1 界面及源代碼298
12.2 應(yīng)用程序框架分解302
12.2.1 Socket連接的建立303
12.2.2 基于TCP的Socket數(shù)據(jù)通信架構(gòu)305
12.2.3 圖形用戶界面與事件處理界面的設(shè)計(jì)308
12.3 網(wǎng)絡(luò)通信基礎(chǔ)知識310
12.3.1 網(wǎng)絡(luò)通信的層次310
12.3.2 通信端口311
12.3.3 Java網(wǎng)絡(luò)編程中主要使用的類和可能產(chǎn)生的異常311
12.3.4 Socket通信模式312
12.3.5 Socket類和ServerSocket類的構(gòu)造方法及常用方法312
12.3.6 API系統(tǒng)中DataInputStream和DataOutputStream的應(yīng)用313
12.3.7 多線程處理機(jī)制315
習(xí)題12316
參考文獻(xiàn)317