本書涵蓋了Java SE的主要內(nèi)容,劃分為三部分:第1篇介紹Java的基礎知識,包括開發(fā)環(huán)境、數(shù)據(jù)類型、流程控制、數(shù)組、函數(shù)、異常等內(nèi)容;第2篇通過實現(xiàn)一個即時通信程序,學習Java SE類庫的使用方法,包括圖形界面設計、輸入輸出、網(wǎng)絡編程、多線程、容器、數(shù)據(jù)庫編程等;第3篇通過實現(xiàn)一個簡單的軟件架構(gòu)設計,學習面向?qū)ο蠹夹g,包括類與對象、封裝、繼承、多態(tài)、抽象類、接口等,為后續(xù)的Java企業(yè)級應用開發(fā)做準備。
本書的目標:第一,訓練編程入門者的編程邏輯;第二,讓學習者理解并掌握Java程序設計語言的語法和類庫;第三,讓學習者理解面向?qū)ο蠹夹g,對軟件架構(gòu)有初步的認識。
本書的第2篇和第3篇分別使用了一個具有一定規(guī)模的實際項目,介紹了項目從需求分析到設計、代碼實現(xiàn)的全過程,引領學習者以項目需求為引導,在做中學,使學習者不但能學習Java編程,而且能了解軟件項目開發(fā)的基本過程以及互聯(lián)網(wǎng)時代下自行探索和應用新技術的方法。
本書可作為計算機相關專業(yè)的教學用書,也可作為普通高校程序設計公共課程的教材,同時也可作為職業(yè)教育的培訓用書和Java學習者的自學用書。
本書配套資源豐富,包括微課資源、PPT、課程標準、源代碼等。
王玲,西安交通大學計算機系軟件專業(yè)本科畢業(yè),華南理工大學計算機系面向網(wǎng)絡的計算機應用方向研究生畢業(yè)。從事計算機編程教育25年。講授課程:C語言程序設計、python程序設計、java面向?qū)ο蟪绦蛟O計、android程序設計、數(shù)據(jù)結(jié)構(gòu)等。有豐富的教學經(jīng)驗,深受學生好評。
第1篇Java基礎編程
第1章Java初接觸3
1.1程序的定義3
1.2學習Java的意義5
1.3開發(fā)Java程序的步驟6
1.4Java的開發(fā)環(huán)境6
1.5Java的基本語法規(guī)定15
練習17
第2章數(shù)據(jù)類型和運算符19
2.1變量20
2.2數(shù)據(jù)類型21
2.3常用運算符23
2.4數(shù)據(jù)類型轉(zhuǎn)換29
2.5從鍵盤讀入數(shù)據(jù)30
練習31
第3章流程控制32
3.1順序結(jié)構(gòu)32
3.2分支結(jié)構(gòu)33
3.3循環(huán)結(jié)構(gòu)43
練習51
第4章數(shù)組與字符串53
4.1數(shù)組53
4.2字符串62
練習67
第5章函數(shù)(方法)69
5.1函數(shù)的概念和使用69
5.2函數(shù)的語法總結(jié)74
練習75
第6章階段編程練習77
6.1Stars(彩色星空)77
6.2FallingBall(下落的小球)80
6.3SpringingBall(彈動的小球)84
6.4Snows(漫天下雪)86
6.5ControledBall(受控移動的小球)88
6.6HitChars(打字游戲)92
第7章異常95
7.1異常的概念95
7.2異常處理機制95
7.3方法聲明拋出異常99
7.4常見的異常100
7.5拋出異常的方法101
7.6自定義異常102
練習103
第2篇實現(xiàn)一個即時通信程序
第8章版本一 實現(xiàn)登錄和聊天界面108
8.1功能需求1(登錄界面)108
8.2相關知識點:Java圖形界面設計108
8.3實現(xiàn)參考1(登錄界面)114
8.4功能需求2(聊天界面)116
8.5實現(xiàn)參考2(聊天界面)116
8.6知識點拓展:Java組件類117
練習118
第9章版本二 實現(xiàn)按鈕事件響應120
9.1功能需求1(登錄事件)120
9.2相關知識點:Java事件處理120
9.3實現(xiàn)參考1(登錄事件)122
9.4功能需求2(聊天事件)125
9.5實現(xiàn)參考2(聊天事件)125
9.6知識點拓展:各種事件接口126
練習127
第10章版本三 將聊天內(nèi)容存入本地的聊天記錄文件128
10.1功能需求(聊天歷史存盤)128
10.2相關知識點:Java文件的處理與輸入輸出128
10.3實現(xiàn)參考(聊天歷史存盤)129
10.4知識點拓展:I/O類庫133
練習143
第11章版本四 連接服務器登錄144
11.1功能需求1(聯(lián)網(wǎng)登錄)144
11.2相關知識點:Java網(wǎng)絡編程、TCP實現(xiàn)144
11.3實現(xiàn)參考1(聯(lián)網(wǎng)登錄)147
11.4功能需求2(發(fā)送聊天信息到服務器)152
11.5實現(xiàn)參考2(發(fā)送聊天信息到服務器)152
11.6知識點拓展:UDP通信方式的實現(xiàn)159
練習162
第12章版本五 實現(xiàn)多客戶端并發(fā)登錄163
12.1功能需求1(服務器端并發(fā)連接多個客戶端)163
12.2相關知識點:多線程163
12.3實現(xiàn)參考1(服務器端并發(fā)連接多個客戶端)166
12.4功能需求2(在客戶端并行發(fā)送和接收)168
12.5實現(xiàn)參考2(在客戶端并行發(fā)送和接收)168
12.6知識點拓展:線程同步、線程通信172
練習183
第13章版本六 實現(xiàn)客戶端之間的聊天184
13.1功能需求(在線用戶列表的維護)184
13.2相關知識點:容器184
13.3實現(xiàn)參考(在線用戶列表的維護)186
13.4知識點拓展:主要的容器接口和類196
練習200
第14章版本七 連接數(shù)據(jù)庫202
14.1功能需求(連接數(shù)據(jù)庫進行賬戶注冊和登錄)202
14.2相關知識點:Java數(shù)據(jù)庫編程202
14.3實現(xiàn)參考(連接數(shù)據(jù)庫進行賬戶注冊和登錄)205
14.4知識點拓展:數(shù)據(jù)庫的基本操作211
練習215
第3篇實現(xiàn)一個簡單的軟件架構(gòu)設計
第15章實體類的定義222
15.1設計目的222
15.2相關知識點:類與對象、封裝222
15.3代碼實現(xiàn)參考232
15.4知識點拓展234
練習237
第16章數(shù)據(jù)層的定義238
16.1設計目的238
16.2相關知識點:靜態(tài)、繼承、接口239
16.3代碼實現(xiàn)參考257
16.4知識點拓展:抽象類、多態(tài)270
練習277
第17章業(yè)務層的定義280
17.1設計目的280
17.2相關知識點:設計模式280
17.3代碼實現(xiàn)參考281
17.4知識點拓展:框架291
練習293
參考文獻294
附錄用Alice學習面向?qū)ο缶幊?95