本書作為高職部分java面向?qū)ο蟪绦蛟O(shè)計(jì)教材,分為10個項(xiàng)目,注重培養(yǎng)學(xué)生綜合職業(yè)能力,教材注重由淺入深,由點(diǎn)到面,以能力為主線的整體設(shè)計(jì)思路,重新組合課程,節(jié)約之前重復(fù)學(xué)習(xí)的時(shí)間,做到知識結(jié)構(gòu)的連貫性,并遵循從學(xué)生專業(yè)能力,方法能力,社會能力和發(fā)展能力角度出發(fā),內(nèi)容循序漸進(jìn),深入淺出,精心設(shè)計(jì)每一個示例,結(jié)構(gòu)安排更為合理,使讀者準(zhǔn)確把握J(rèn)ava的知識點(diǎn)。教材在講解一項(xiàng)任務(wù)時(shí)按照需求分析,技能解析,知識解析,編碼實(shí)施,調(diào)試運(yùn)行和維護(hù)升級的職業(yè)情境為主線,緊跟相關(guān)的實(shí)例演示,使學(xué)習(xí)者綜合應(yīng)用已經(jīng)學(xué)過的主要知識,以期達(dá)到培養(yǎng)出企業(yè)真正急需人才的目的。
Java是由Sun Microsystems公司于1995年推出的可以編寫跨平臺應(yīng)用軟件的面向?qū)ο蟮母呒壋绦蛟O(shè)計(jì)語言。2010年Sun Microsystems公司被Oracle公司收購。現(xiàn)今Java是幾乎所有類型的網(wǎng)絡(luò)應(yīng)用程序的基礎(chǔ),也是開發(fā)和提供嵌入式和移動應(yīng)用程序,游戲,基于Web的內(nèi)容與企業(yè)軟件的全球標(biāo)準(zhǔn)。Java語言在全球有超過900萬的開發(fā)人員,能夠高效地開發(fā),部署功能強(qiáng)大的應(yīng)用程序和服務(wù)。鑒于其在軟件開發(fā)方面的霸主地位,各高校已將其作為計(jì)算機(jī)類學(xué)生必修的課程之一。本教材注重培養(yǎng)學(xué)生綜合職業(yè)能力,教材注重由淺入深,由點(diǎn)到面,以能力為主線的整體設(shè)計(jì)思路,重新組合課程,節(jié)約之前重復(fù)學(xué)習(xí)的時(shí)間,做到知識結(jié)構(gòu)的連貫性,并遵循從學(xué)生專業(yè)能力,方法能力,社會能力和發(fā)展能力角度出發(fā),內(nèi)容循序漸進(jìn),深入淺出,精心設(shè)計(jì)每一個示例,結(jié)構(gòu)安排更為合理,使讀者準(zhǔn)確把握J(rèn)ava的知識點(diǎn)。本教材在講解一項(xiàng)任務(wù)時(shí)按照需求分析,技能解析,知識解析,編碼實(shí)施,調(diào)試運(yùn)行和維護(hù)升級的職業(yè)情境為主線,緊跟相關(guān)的實(shí)例演示,使學(xué)習(xí)者綜合應(yīng)用已經(jīng)學(xué)過的主要知識,以期達(dá)到培養(yǎng)出企業(yè)真正急需人才的目的。 本書作為中高職銜接貫通培養(yǎng)教材Java語言類課程第二階段的深入教學(xué),分為10個項(xiàng)目,以下是每一項(xiàng)目的簡單介紹。項(xiàng)目1:類與對象,類的方法,類的封裝,讓學(xué)生理解面向?qū)ο蟪绦蛟O(shè)計(jì)思想,能從結(jié)構(gòu)化程序設(shè)計(jì)思路轉(zhuǎn)變到面向?qū)ο蟪绦蛟O(shè)計(jì)思想上,介紹類的定義和對象的使用,能夠在編寫程序時(shí)可以熟練地使用方法,并且能夠?qū)Τ绦蜻M(jìn)行正確的封裝。項(xiàng)目2:繼承和多態(tài),介紹this,super和final關(guān)鍵字的使用場景和作用?梢岳媒涌谧龈顚哟蔚某橄。項(xiàng)目3:異常處理,學(xué)會異常捕獲,異常處理,拋出異常的方法,能夠利用異常處理機(jī)制處理程序中可能出現(xiàn)的異常。項(xiàng)目4:集合與泛型,重點(diǎn)介紹ArrayList,HashMap兩種集合的使用場景,學(xué)會使用迭代器遍歷集合,介紹泛型的基本使用。項(xiàng)目5:Java數(shù)據(jù)庫連接,介紹JDBC編程的基本步驟,利用JDBC技術(shù)實(shí)現(xiàn)對不同類型數(shù)據(jù)庫(access ,SQL Server, MySql)的操作,掌握J(rèn)DBC編程在實(shí)際項(xiàng)目中的應(yīng)用,為Java數(shù)據(jù)庫系統(tǒng)開發(fā)打下良好的基礎(chǔ)。項(xiàng)目6:Java圖形用戶界面,介紹了容器,布局管理器,常用組件和Java的事件處理機(jī)制,對于比較復(fù)雜的組件都給出了很實(shí)用的例子。項(xiàng)目7:Java中的輸入/輸出流技術(shù)。項(xiàng)目8:多線程機(jī)制,首先介紹Java線程的運(yùn)行機(jī)制,然后介紹多線程的基本概念與創(chuàng)建,啟動方法,以及如何對多個線程進(jìn)行調(diào)度,同步和通信的基本知識。項(xiàng)目9:網(wǎng)絡(luò)編程,介紹網(wǎng)絡(luò)編程中的基本概念,理解并比較TCP協(xié)議與UDP協(xié)議兩種網(wǎng)絡(luò)編程的實(shí)現(xiàn)方式,能分別使用Socket類與ServerSocket類來創(chuàng)建客戶端程序與服務(wù)端程序。項(xiàng)目10:綜合實(shí)戰(zhàn)項(xiàng)目,鞏固和提升學(xué)生對所學(xué)知識的綜合應(yīng)用能力。主要介紹學(xué)生信息管理系統(tǒng)的實(shí)現(xiàn)過程,如系統(tǒng)的需求分析,概要設(shè)計(jì),數(shù)據(jù)庫設(shè)計(jì),模塊實(shí)現(xiàn)和系統(tǒng)測試等。最后編碼實(shí)現(xiàn)該項(xiàng)目。本書內(nèi)容安排合理,邏輯性強(qiáng),講解循序漸進(jìn),通俗易懂,符合三二分段的中高職兩個學(xué)習(xí)階段的學(xué)生認(rèn)知過程及學(xué)習(xí)規(guī)律,適合高等職業(yè)院校計(jì)算機(jī)及信息工程或相關(guān)專業(yè)教材或參考書,也可供相關(guān)領(lǐng)域的讀者參考。本教材由黑龍江農(nóng)業(yè)經(jīng)濟(jì)職業(yè)學(xué)院何鑫,黑龍江省依蘭縣職業(yè)中學(xué)楊翠萍擔(dān)任主編,負(fù)責(zé)制定編寫大綱和全書統(tǒng)稿工作,黑龍江農(nóng)業(yè)經(jīng)濟(jì)職業(yè)學(xué)院孫守梅,張業(yè)男擔(dān)任副主編。具體分工為:項(xiàng)目1,項(xiàng)目2中的任務(wù)1,任務(wù)2由黑龍江農(nóng)業(yè)經(jīng)濟(jì)職業(yè)學(xué)院張業(yè)男負(fù)責(zé)編寫,項(xiàng)目3由黑龍江農(nóng)業(yè)經(jīng)濟(jì)職業(yè)學(xué)院于瀛軍負(fù)責(zé)編寫,項(xiàng)目4中的任務(wù)1由哈爾濱學(xué)院劉磊負(fù)責(zé)編寫,項(xiàng)目4中的任務(wù)2及項(xiàng)目實(shí)訓(xùn)與練習(xí)由依蘭縣職業(yè)中學(xué)楊翠萍負(fù)責(zé)編寫,項(xiàng)目5,項(xiàng)目6由黑龍江農(nóng)業(yè)經(jīng)濟(jì)職業(yè)學(xué)院孫守梅負(fù)責(zé)編寫,項(xiàng)目2中的任務(wù)3及項(xiàng)目實(shí)訓(xùn)與練習(xí),項(xiàng)目7,項(xiàng)目8,項(xiàng)目9,項(xiàng)目10由黑龍江農(nóng)業(yè)經(jīng)濟(jì)職業(yè)學(xué)院何鑫負(fù)責(zé)編寫。編寫團(tuán)隊(duì)在這一年多的編寫過程中付出了很多辛勤的汗水,盡管我們盡了最大的努力,但教材中難免會有不妥之處,歡迎各界專家和讀者朋友們提供寶貴意見和建議,我們不勝感激!編者
項(xiàng)目1 歡迎來到另一個世界
任務(wù)1 了解另一個世界:類與對象1
任務(wù)2 對象的行為10
1.2.1
方法的使用10
1.2.2
構(gòu)造方法14
任務(wù)3 高手需要知道的封裝:類的封裝20
項(xiàng)目實(shí)訓(xùn)與練習(xí)26
項(xiàng)目2 面向?qū)ο蟮耐?/p>
任務(wù)1 簡易多種圖形的變化程序:繼承的使用29
任務(wù)2 強(qiáng)化圖形變化程序:多態(tài)的使用37
任務(wù)3 課表打印程序:抽象與接口42
項(xiàng)目實(shí)訓(xùn)與練習(xí)50
項(xiàng)目3 強(qiáng)壯的計(jì)算器
任務(wù)1 編寫健壯的程序:異常處理52
任務(wù)2 別人的異常:拋出異常60
項(xiàng)目實(shí)訓(xùn)與練習(xí)64
項(xiàng)目4 復(fù)雜的數(shù)據(jù)
任務(wù)1 歌曲管理程序:ArrayList,HashMap集合66
任務(wù)2 優(yōu)化歌曲管理程序:泛型與迭代器74
項(xiàng)目實(shí)訓(xùn)與練習(xí)78
項(xiàng)目5 員工信息管理程序
任務(wù)1 查詢員工信息80
任務(wù)2 查詢?nèi)繂T工信息85
任務(wù)3 添加增刪改操作90
項(xiàng)目實(shí)訓(xùn)與練習(xí)95
項(xiàng)目6 圖形用戶界面設(shè)計(jì)
任務(wù)1 用戶注冊界面設(shè)計(jì)96
6.1.1
組件概述97
6.1.2
java.awt包97
6.1.3
java.swing包99
6.1.4
窗口容器類100
6.1.5
容器的布局102
任務(wù)2 添加員工信息系統(tǒng)的事件處理109
6.2.1
事件處理模式110
6.2.2
事件處理的實(shí)現(xiàn)原理110
6.2.3
事件包111
6.2.4
事件的主要處理方法112
6.2.5
鍵盤事件112
6.2.6
鼠標(biāo)事件114
任務(wù)3 實(shí)現(xiàn)員工信息系統(tǒng)主界面121
6.3.1
按鈕121
6.3.2
文本框,文本域和標(biāo)簽122
6.3.3
復(fù)選框與單選按鈕125
6.3.4
列表框和組合框129
6.3.5
對話框132
6.3.6
菜單136
任務(wù)4 嵌入網(wǎng)頁上的Applet 程序144
6.4.1
Applet類及相關(guān)方法145
6.4.2
Applet程序建立及運(yùn)行過程147
6.4.3
Applet圖像技術(shù)148
項(xiàng)目實(shí)訓(xùn)與練習(xí)151
項(xiàng)目7 輸入輸出流
任務(wù)1 統(tǒng)計(jì)鍵盤輸入字符個數(shù)的程序154
7.1.1
流的概念155
7.1.2
流的分類156
任務(wù)2 利用字節(jié)流實(shí)現(xiàn)文件的復(fù)制過程157
7.2.1
字節(jié)流概述158
7.2.2
輸入字節(jié)數(shù)據(jù)158
7.2.3
字符流類161
7.2.4
過濾流164
任務(wù)3 序列化對象165
7.3.1
對象序列化166
7.3.2
Serializable的作用168
項(xiàng)目實(shí)訓(xùn)與練習(xí)170
項(xiàng)目8 Java的分身術(shù):多線程機(jī)制
任務(wù)1 時(shí)鐘顯示器的多線程實(shí)現(xiàn)171
8.1.1
Java中的多線程機(jī)制172
8.1.2
線程與進(jìn)程172
8.1.3
線程生命周期172
8.1.4
多線程的實(shí)現(xiàn)方式174
任務(wù)2 線程調(diào)度180
8.2.1
線程的優(yōu)先級181
8.2.2
線程調(diào)度方法181
8.2.3
線程的同步182
項(xiàng)目實(shí)訓(xùn)與練習(xí)186
項(xiàng)目9 網(wǎng)絡(luò)編程
任務(wù)1 基于TCP實(shí)現(xiàn)簡單聊天室程序187
9.1.1
網(wǎng)絡(luò)通信概述188
9.1.2
URL編程189
9.1.3
Socket編程190
任務(wù)2 使用UDP協(xié)議的Java聊天室198
項(xiàng)目實(shí)訓(xùn)與練習(xí)206
項(xiàng)目10 項(xiàng)目實(shí)戰(zhàn)學(xué)生信息管理系統(tǒng)
10.1
系統(tǒng)概述207
10.2
需求分析208
10.2.1
本系統(tǒng)開發(fā)過程中使用的環(huán)境208
10.2.2
概要設(shè)計(jì)208
10.3
詳細(xì)設(shè)計(jì)及編碼210
參考文獻(xiàn)241