編者秉持工程教育理念,以卓越工程師計劃和應用型本科教育要求為指導,將激發(fā)學生學習興趣和培養(yǎng)實際開發(fā)能力作為首要目標。在內(nèi)容選擇上,本書注重實用性和時效性,剔除已顯陳舊的技術和概念。對于核心知識點,編者精心挑選了典型實例程序,并配以詳盡注釋。本書采用項目的方式介紹Java的理論知識與使用技巧,包括10個項目,內(nèi)容涵蓋Java編程基礎、Java面向?qū)ο蟪绦蛟O計、類的深入解析、數(shù)組和字符串、異常處理、輸入/輸出、圖形用戶界面、多線程、網(wǎng)絡編程等。本書可作為高等學校和職業(yè)院校理工類專業(yè)學習Java程序設計的教材,也可供對Java編程感興趣的人員參考。
林勝青,副教授,在讀博士,福州理工學院計算機科學與技術專業(yè)帶頭人。2017年被評為福州市教育系統(tǒng)先進工作者。發(fā)表學術論文十多篇,被SCI、Scopus、CSCD、北大核心、中國科學引文索引(CSCI)等收錄多篇,獲專利、實用新型和軟著多項。
項目一 認識Java / 1
任務一 Java的產(chǎn)生、發(fā)展與特點 / 1
一、Java的產(chǎn)生與發(fā)展 / 1
二、Java的特點 / 3
任務二 Java的開發(fā)工具與開發(fā)環(huán)境 / 6
一、Java運行環(huán)境與Java開發(fā)包 / 6
二、Eclipse / 12
任務三 Java程序的基本結構 / 16
項目小結 / 20
思考與練習 / 20
項目二 Java編程基礎 / 22
任務一 標識符與分割符 / 22
一、Java的標識符 / 22
二、Java的分隔符 / 23
三、Java的特殊標識符 / 23
任務二 數(shù)據(jù)類型 / 24
一、基本數(shù)據(jù)類型 / 24
二、復合數(shù)據(jù)類型 / 25
三、數(shù)據(jù)類型轉(zhuǎn)換 / 25
四、各種數(shù)據(jù)類型數(shù)據(jù)的表示方法 / 26
任務三 變量和常量 / 28
一、變量 / 28
二、常量 / 29
任務四 運算符 / 30
一、算術運算符 / 30
二、關系運算符 / 31
三、邏輯運算符 / 32
四、賦值運算符 / 34
五、條件運算符 / 34
六、位運算符 / 34
七、運算符的優(yōu)先級與結合方向 / 36
任務五 流程控制語句 / 37
一、順序語句 / 37
二、選擇語句 / 37
三、循環(huán)語句 / 40
四、跳轉(zhuǎn)語句 / 45
任務六 程序注釋 / 47
項目小結 / 47
思考與練習 / 47
項目三 Java面向?qū)ο蟪绦蛟O計 / 49
任務一 面向?qū)ο蟪绦蛟O計的基本概念 / 49
一、對象 / 49
二、類 / 49
三、封裝 / 50
四、繼承 / 50
五、多態(tài) / 50
任務二 類的使用方法 / 51
一、類聲明 / 51
二、成員變量與靜態(tài)變量 / 51
三、成員方法的聲明與實現(xiàn) / 53
四、構造方法 / 55
任務三 對象的創(chuàng)建與使用方法 / 56
一、對象的創(chuàng)建 / 56
二、對象的使用 / 58
三、Java的垃圾回收機制—對象的清除 / 60
任務四 包的創(chuàng)建與使用方法 / 61
一、包的創(chuàng)建、聲明與使用 / 62
二、Java的常用包 / 65
綜合實訓 模擬貸款 / 65
項目小結 / 66
思考與練習 / 67
項目四 類的深入解析 / 69
任務一 類的繼承/ 69
一、子類的定義 / 69
二、子類的構造方法 / 70
三、類成員的隱藏與重載 / 71
四、構造方法的調(diào)用 / 75
任務二 類的多態(tài) / 76
一、多態(tài)概念 / 76
二、方法重載 / 77
三、構造方法的重載 / 78
四、數(shù)據(jù)類型轉(zhuǎn)換 / 79
任務三 抽象類 / 81
一、抽象類的定義 / 81
二、抽象類的使用 / 81
任務四 接口 / 82
一、接口的定義 / 82
二、接口的繼承 / 83
三、多重繼承接口 / 84
四、接口的實現(xiàn) / 84
項目小結 / 85
思考與練習 / 86
項目五 數(shù)組和字符串 / 88
任務一 數(shù)組 / 88
一、數(shù)組概述 / 88
二、一維數(shù)組 / 88
三、多維數(shù)組 / 92
任務二 字符串 / 94
項目小結 / 100
思考與練習 / 100
項目六 異常處理 / 102
任務一 異常和異常類 / 102
任務二 已檢查異常和未檢查異常 / 104
任務三 異常處理的方法 / 105
一、try...catch...?nally語句 / 105
二、再次拋出異常 / 106
任務四 異常處理技巧 / 107
任務五 自定義異常類 / 108
項目小結 / 109
思考與練習 / 109
項目七 輸入/輸出 / 111
任務一 輸入/輸出類庫 / 111
一、流的概念 / 111
二、基本輸入/輸出流類 / 112
三、其他輸入/輸出流類 / 113
四、標準輸入/輸出 / 114
任務二 字符輸入/輸出 / 115
一、字符輸入 / 115
二、字符輸出 / 116
任務三 數(shù)據(jù)輸入/輸出 / 117
任務四 文件與目錄 / 119
一、創(chuàng)建File類對象 / 119
二、獲取文件或目錄屬性 / 119
三、文件或目錄操作 / 120
四、順序文件的訪問 / 122
五、隨機文件的訪問 / 123
項目小結 / 126
思考與練習 / 126
項目八 圖形用戶界面 / 128
任務一 Swing概述 / 128
一、Swing組件按功能的分類 / 129
二、Swing的特點 / 129
任務二 Swing容器 / 130
一、頂層容器 / 130
二、通用容器 / 132
三、專用容器 / 139
任務三 基本組件的使用 / 139
任務四 菜單 / 144
任務五 對話框 / 146
任務六 使用Action接口處理行為事件 / 148
一、Java事件處理原理 / 149
二、Java事件與監(jiān)聽器的類型 / 149
三、處理動作事件 / 152
四、處理選項事件 / 153
五、實現(xiàn)事件監(jiān)聽器的不同方式 / 153
項目小結 / 154
思考與練習 / 154
項目九 多線程 / 156
任務一 Java中的線程 / 156
任務二 線程的生命周期 / 156
任務三 線程的優(yōu)先級和調(diào)度管理 / 158
任務四 擴展Thread類創(chuàng)建線程 / 159
任務五 實現(xiàn)Runnable接口創(chuàng)建線程 / 160
任務六 常用方法 / 161
任務七 線程同步 / 162
任務八 線程組 / 166
項目小結 / 166
思考與練習 / 166
項目十 網(wǎng)絡編程 / 168
任務一 Java的網(wǎng)絡支持 / 168
一、InetAddress類的使用 / 168
二、URLDecoder類和URLEncoder類的使用 / 169
三、URL類和URLConnection類的使用 / 171
任務二 基于TCP協(xié)議的網(wǎng)絡編程 / 174
一、TCP協(xié)議 / 174
二、Socket概念及通信機制 / 175
三、創(chuàng)建ServerSocket類 / 176
四、創(chuàng)建Socket類 / 176
五、Client/Server程序設計 / 178
任務三 基于UDP協(xié)議的網(wǎng)絡編程 / 181
一、UDP協(xié)議 / 182
二、使用MulticastSocket類廣播通信 / 186
項目小結 / 189
思考與練習 / 189
參考文獻 / 191