Java程序設(shè)計(jì)教程——微課·實(shí)訓(xùn)·課程設(shè)計(jì)(21世紀(jì)高等學(xué)校計(jì)算機(jī)類課程創(chuàng)新規(guī)劃教材·微課版)
定 價(jià):59 元
- 作者:張延軍,王保民,何月梅,司玲玲,喬德軍 著
- 出版時間:2017/4/1
- ISBN:9787507526875
- 出 版 社:清華大學(xué)出版社
- 中圖法分類:K109
- 頁碼:394
- 紙張:膠版紙
- 版次:1
- 開本:16
本書主要面向高校Java程序設(shè)計(jì)教學(xué)和實(shí)訓(xùn)要求,以培養(yǎng)Java軟件工程師為教學(xué)目標(biāo),教學(xué)內(nèi)容包括Java語言基本語法、面向?qū)ο蟪绦蛟O(shè)計(jì)、Java常用類的使用、Java I/O技術(shù)、GUI編程技術(shù)、多線程技術(shù)、網(wǎng)絡(luò)編程技術(shù)、JDBC編程技術(shù)等。
本書的編寫堅(jiān)持夠用、實(shí)用、簡單、直接的教學(xué)理念,對教學(xué)內(nèi)容進(jìn)行精心設(shè)計(jì)和選擇,通過142個示例程序、100個程序編寫任務(wù)、60個微視頻、8個難度和工作量適宜的課程設(shè)計(jì)為學(xué)生構(gòu)建全方位立體化、全過程支持、科學(xué)合理的Java學(xué)習(xí)路線圖,構(gòu)建了包含微視頻、編程、實(shí)驗(yàn)、課程設(shè)計(jì)在內(nèi)的Java實(shí)訓(xùn)教學(xué)體系。
1.配有近20小時、60段微課視頻,掃描書中二維碼即可訪問,并提供二維碼頁碼索引。
2.精心設(shè)計(jì)150個程序?qū)嵗?5道編程實(shí)踐題與若干實(shí)際操作題,重點(diǎn)題目提供解題過程視頻。所有題目提供解題源代碼。
3.精心設(shè)計(jì)8個課程設(shè)計(jì)項(xiàng)目并提供詳細(xì)解析。
4.提供SCJP(原Sun公司Java認(rèn)證考試)全英文自測題,幫助讀者提高英文水平。
前言
經(jīng)過二十幾年的發(fā)展,Java語言已經(jīng)成為計(jì)算機(jī)史上影響深遠(yuǎn)的編程語言。不但如此,Java已經(jīng)超出了編程語言的范疇,發(fā)展成為一個開發(fā)平臺、一個產(chǎn)業(yè)、一種思想、一種文化。
“Java程序設(shè)計(jì)”是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的一門專業(yè)基礎(chǔ)必修課程。在教育部計(jì)算機(jī)基礎(chǔ)課程教學(xué)指導(dǎo)委員會制定的白皮書中,“Java程序設(shè)計(jì)”課程被列為核心課程。Java軟件開發(fā)方向是我國目前IT行業(yè)計(jì)算機(jī)類專業(yè)學(xué)生的重要的就業(yè)方向。
1. 高校IT人才培養(yǎng)的背景
(1) 經(jīng)濟(jì)社會的高速發(fā)展對IT產(chǎn)業(yè)(尤其是軟件產(chǎn)業(yè))提出了更高的要求,對Java軟件開發(fā)人才從數(shù)量和質(zhì)量方面也都提出了更高的要求。
(2) 智能手機(jī)操作系統(tǒng)——Android的市場占有率一路攀升。Android系統(tǒng)采用Java語言來開發(fā)手機(jī)應(yīng)用程序,這給Java帶來新的發(fā)展機(jī)遇。
(3) 教育技術(shù)的進(jìn)步和移動互聯(lián)網(wǎng)時代的到來打破了高校進(jìn)行知識傳播的技術(shù)壁壘,大量的資本和風(fēng)險(xiǎn)投資涌進(jìn)IT培訓(xùn)產(chǎn)業(yè)。達(dá)內(nèi)、東軟、傳智播客等實(shí)體IT培訓(xùn)機(jī)構(gòu),開課吧、慕課網(wǎng)、極客網(wǎng)等在線IT培養(yǎng)機(jī)構(gòu)引入了先進(jìn)的教學(xué)理念、強(qiáng)大的技術(shù)支持,再加上商業(yè)化運(yùn)作,給高校IT人才培養(yǎng)帶來巨大的挑戰(zhàn)和競爭的壓力。
(4) 教學(xué)理念、教學(xué)模式的發(fā)展: CDIO、MOOC、翻轉(zhuǎn)課堂、混合式教學(xué)、案例式教學(xué)、目標(biāo)驅(qū)動、問題導(dǎo)向等教學(xué)理念、教學(xué)模式迅速滲透到每一個傳統(tǒng)課堂。傳統(tǒng)的“單向封閉”的教學(xué)環(huán)境開始走向開放,傳統(tǒng)的“以教師為中心”的師生關(guān)系開始變?yōu)椤耙詫W(xué)生為中心”,傳統(tǒng)課堂中的教師從知識傳授者和課堂管理者轉(zhuǎn)變?yōu)閷W(xué)習(xí)指導(dǎo)者、教學(xué)資源開發(fā)者、教學(xué)幫助者和促進(jìn)者,傳統(tǒng)課堂中的學(xué)生則由“被動接受者”轉(zhuǎn)變?yōu)橹鲃友芯空摺?
(5) 教學(xué)環(huán)境的變化: 教室、實(shí)驗(yàn)室硬件配置齊全,實(shí)現(xiàn)了高速、穩(wěn)定的Internet接入; 筆記本和手機(jī)等互聯(lián)網(wǎng)接入設(shè)備日漸普及,這些都為先進(jìn)教學(xué)理念和教學(xué)模式的實(shí)施提供了硬件和軟件上的準(zhǔn)備。
(6) 教育參與者: 教師正在樹立“教育就是服務(wù)”的教育觀念,正在貫徹工程教育的教育理念,從注重“教師教什么”轉(zhuǎn)移到“學(xué)生學(xué)到了什么”。學(xué)生作為數(shù)字原住民,對新鮮事物、新技術(shù)、新教學(xué)方式(人性化學(xué)習(xí)、泛在學(xué)習(xí)等)有著天然的渴望。
IT產(chǎn)業(yè)、軟件技術(shù)、軟件人才培養(yǎng)競爭、教學(xué)理念、教學(xué)模式、教學(xué)環(huán)境、教學(xué)對象等因素的發(fā)展和變化使得高校必須進(jìn)行教學(xué)改革,教師必須圍繞以上因素進(jìn)行課程教學(xué)改革,教材建設(shè)也是勢在必行。
2. Java教材存在的問題
教材作為人才培養(yǎng)的重要載體,是主要的教學(xué)資源之一,是教與學(xué)的重要憑借,是教學(xué)理念、教學(xué)特色、教學(xué)方法、教學(xué)內(nèi)容、教學(xué)資源等的全面體現(xiàn)。以紙質(zhì)教材為中心,構(gòu)建支持學(xué)生學(xué)習(xí)全過程、線上線下相結(jié)合的全新生態(tài)系統(tǒng),是國內(nèi)外教材發(fā)展的*新趨勢。鑒于Java技術(shù)的市場地位,Java教材從國外原版教材到翻譯教材再到本土化教材,呈現(xiàn)出百家齊放、百家爭鳴的良好局面。目前,Java教材也存在以下問題: 教學(xué)理念、教學(xué)模式不能緊跟時代潮流,教學(xué)內(nèi)容的選擇和呈現(xiàn)過于單一,對學(xué)生的學(xué)習(xí)過程支持不夠,特色不夠鮮明,等等。
3. 本書的內(nèi)容
根據(jù)市場定位和面向受眾不同,Sun公司把Java技術(shù)分成Java ME、Java SE和Java EE幾個平臺。顯然,Java*成功的領(lǐng)域是Java EE。學(xué)習(xí)Java應(yīng)該從Java SE入手,為后續(xù)學(xué)習(xí)打下堅(jiān)實(shí)的基礎(chǔ),然后才能學(xué)習(xí)Java EE和Java ME。
本書主要面向Java SE,基于JDK 1.7和Eclipse IDE環(huán)境,對教學(xué)內(nèi)容進(jìn)行重新選擇和設(shè)計(jì),刪除了使用頻率少或已經(jīng)淘汰的技術(shù),如Applet等; 加入JDK 1.5、JDK 1.6、JDK 1.7等版本的語言新特性; 加強(qiáng)Eclipse IDE環(huán)境的使用; 加強(qiáng)swing GUI編程技術(shù)教學(xué),引入了swing開發(fā)插件——WindowBuilder; 加強(qiáng)多線程技術(shù)教學(xué),介紹了Concurrency開發(fā)庫技術(shù); 加強(qiáng)Java網(wǎng)絡(luò)編程技術(shù)、JDBC編程技術(shù)。本書分為上篇、中篇和下篇3個部分,分別介紹如下。
(1) 上篇“Java編程基礎(chǔ)”: 本篇通過Java發(fā)展介紹、Java開發(fā)環(huán)境的構(gòu)建、Java語言基礎(chǔ)、流程控制、數(shù)組、類和對象、包裝類、Java文檔注釋、UML、接口、內(nèi)部類、異常處理等內(nèi)容使讀者能夠快速掌握J(rèn)ava語言語法、Java編程基本技巧和面向?qū)ο缶幊趟枷,為以后編程奠定?jiān)實(shí)的基礎(chǔ)。
(2) 中篇“Java高級編程”: 本篇首先介紹java.lang包中的常見類、java.util包中的常見類、java.text包中的常見類、集合類框架、枚舉、泛型、正則表達(dá)式,然后分別介紹Java I/O技術(shù)、Java GUI編程技術(shù)、Java多線程技術(shù)、Java網(wǎng)絡(luò)編程技術(shù)、JDBC編程技術(shù)等。通過本篇的學(xué)習(xí),讀者能夠具備進(jìn)行Java應(yīng)用開發(fā)的技術(shù)基礎(chǔ)。
(3) 下篇“課程設(shè)計(jì)”: 本篇采用CDIO“做中學(xué)”的教學(xué)理念,通過下達(dá)項(xiàng)目任務(wù)、項(xiàng)目設(shè)計(jì)、項(xiàng)目學(xué)中做、總結(jié)提高等步驟介紹了8個工作量適中、綜合性強(qiáng)、能解決實(shí)際問題的Java課程設(shè)計(jì)。課程設(shè)計(jì)將本書的內(nèi)容進(jìn)一步融會貫通,使讀者在解決實(shí)際問題的過程中加深對技術(shù)的理解和應(yīng)用。
在教學(xué)時教師可以根據(jù)學(xué)時、教學(xué)對象、教學(xué)目的等因素對教學(xué)內(nèi)容進(jìn)行選擇、組合和取舍。
4. 本書的特色
編者投入了大量精力,力求使本書體現(xiàn)以下特色。
(1) 強(qiáng)調(diào)“簡單、直接、實(shí)用、夠用”的教學(xué)理念,貫徹“以服務(wù)為宗旨,以應(yīng)用為目的,以實(shí)用為主,理論夠用為度”的教學(xué)原則,以培養(yǎng)學(xué)生應(yīng)用能力為主線,通過一個知識點(diǎn)“知識準(zhǔn)備、示例程序、總結(jié)提高”的步驟來講解程序的編寫、調(diào)試和運(yùn)行。
(2) 案例式教學(xué): 強(qiáng)調(diào)“用Java語言講解Java語言”的教學(xué)理念,根據(jù)教學(xué)內(nèi)容精選142個示例程序,強(qiáng)調(diào)示例程序的針對性、實(shí)用性、關(guān)聯(lián)性,讓學(xué)生通過閱讀和調(diào)試示例程序迅速理解理論知識,并達(dá)到實(shí)踐效果。本書所有示例程序均經(jīng)過反復(fù)調(diào)試,確保風(fēng)格統(tǒng)一、注解翔實(shí)、代碼規(guī)范、正確高效。
(3) 編程任務(wù): 本書在每章結(jié)束時均提供了和教學(xué)內(nèi)容對應(yīng)的編程實(shí)踐任務(wù),分不同的難度等級,并給出編程提示。本書共提供了100個編程實(shí)踐任務(wù)。
(4) 低成本微課的錄制: 編者認(rèn)為動輒幾個吉字節(jié)、幾十個小時的教學(xué)全程錄像是高成本、低效率的,而且沒有必要,通過仔細(xì)閱讀即可理解的內(nèi)容沒有必要錄制成視頻。但Java教學(xué)過程中的重/難點(diǎn)、編程實(shí)踐等內(nèi)容非常有必要使用Camtasia Studio軟件進(jìn)行屏幕錄像、編輯后通過網(wǎng)絡(luò)提供給學(xué)生。這種方法對于教師來說是低成本、低門檻、高效率的,教師簡單學(xué)習(xí)后即可上手,無須求助他人。每段微視頻(微課)限制在15分鐘左右,集中講解一個知識點(diǎn)或一個程序的編寫,詳細(xì)展現(xiàn)編程實(shí)現(xiàn)的思維過程。本書免費(fèi)提供60段微視頻(微課),總時長上千分鐘,可掃描二維碼觀看,詳細(xì)列表見前言的*后。
(5) 強(qiáng)調(diào)JDK文檔的閱讀: Java類庫(又稱為Java應(yīng)用程序編程接口API)由編譯器廠商、獨(dú)立軟件供應(yīng)商等以Jar文件和文檔的形式提供。通過API文檔來了解類庫中類和方法的使用是一個程序員必須掌握的技巧。
(6) 強(qiáng)調(diào)英文的閱讀: 英文軟件的漢化不盡如人意,因此讀者在學(xué)習(xí)Java的過程中對英文的閱讀是一個不可回避的問題,如JDK英文文檔的閱讀、Eclipse純英文IDE環(huán)境、英文標(biāo)識符的命名、SCJP全英文試題的閱讀等(關(guān)于SCJP考試的說明請參閱附錄A),本書在各章的自測題中引入了全英文的SCJP選擇題,在附錄中增加了在Eclipse英文版中進(jìn)行Java應(yīng)用開發(fā)的內(nèi)容,并給出Eclipse常見提示錯誤的中文翻譯。
(7) 基于CDIO的課程設(shè)計(jì): 在學(xué)完Java技術(shù)之后,讀者只是具備了Java編程基礎(chǔ),如果沒有課程設(shè)計(jì)環(huán)節(jié),知識和能力也就做不到真正的融會貫通,因此,本書以工程教育理念為指導(dǎo),遵循CDIO教學(xué)模式,采用項(xiàng)目導(dǎo)向的方式,充分體現(xiàn)“做中學(xué)”的理念,提供了8個任務(wù)要求明確、工作量適中、綜合性強(qiáng)的Java應(yīng)用項(xiàng)目。
(8) 本書以“學(xué)生學(xué)習(xí)Java技術(shù)”的角度進(jìn)行知識的呈現(xiàn),而不像傳統(tǒng)教材那樣僅僅站在教師教學(xué)的角度,并強(qiáng)調(diào)支持和服務(wù)要貫穿學(xué)生的整個學(xué)習(xí)過程。同時,本書為教師實(shí)施翻轉(zhuǎn)課堂教學(xué)提供了支持,為評價(jià)學(xué)生學(xué)習(xí)能力提供了數(shù)量足夠的素材和題庫。
5. 本書的使用
(1) 第1章的例程要求安裝JDK 1.7后在DOS命令行下完成Java程序的編寫、調(diào)試和運(yùn)行。
(2) 從第2章開始,要求安裝Eclipse或MyEclipse,構(gòu)建Java軟件開發(fā)環(huán)境; 要求在Eclipse/MyEclipse IDE中完成Java程序的編寫、調(diào)試和運(yùn)行。請讀者詳細(xì)閱讀附錄B,掌握Eclipse/MyEclipse的基本使用技巧。
(3) Java編程實(shí)訓(xùn)作業(yè)以Java Project的形式提交,具體要求請參考2.7節(jié)。
(4) 為減少篇幅,本書中的Java示例程序有以下特點(diǎn):
省略了import語句;
省略了部分注釋;
作者:張延軍、王保民、何月梅、司玲玲、喬德軍
目錄
上篇Java編程基礎(chǔ)
第1章走進(jìn)Java世界
1.1Java語言簡介
1.1.1Java發(fā)展簡史
1.1.2Sun與Microsoft
1.1.3Java的影響力
1.1.4Java語言的特點(diǎn)
1.2Java開發(fā)環(huán)境的構(gòu)建
1.2.1高級語言的運(yùn)行機(jī)制
1.2.2JVM、JRE和JDK
1.2.3JDK的下載和安裝
1.2.4JDK環(huán)境變量的配置
1.2.5JDK安裝文件夾介紹
1.3Java程序的編輯、編譯和運(yùn)行
1.3.1*個Java程序(HelloWorld.java)
1.3.2顯示命令行參數(shù)(CommArg.java)
1.3.3Java程序的各種形態(tài)
1.4Java IDE介紹
1.5本章小結(jié)
1.6自測題
1.7編程實(shí)訓(xùn)
第2章Java語言基礎(chǔ)
2.1Java程序的構(gòu)成
2.1.1標(biāo)識符
2.1.2關(guān)鍵字和保留字
2.1.3Java注釋
2.2Java數(shù)據(jù)類型、常量和變量
2.2.1Java數(shù)據(jù)類型
2.2.2常量
2.2.3變量
2.2.4基本數(shù)據(jù)類型的轉(zhuǎn)換
2.2.5基本數(shù)據(jù)類型的對象包裝類
2.3Java運(yùn)算符、表達(dá)式、語句和程序
2.3.1運(yùn)算符
2.3.2表達(dá)式
2.3.3語句和程序
2.3.4Java程序的書寫風(fēng)格
2.4Java流程控制語句
2.4.1順序結(jié)構(gòu)
2.4.2分支結(jié)構(gòu)
2.4.3循環(huán)結(jié)構(gòu)
2.4.4break和continue語句
2.5Java語言編程的基本技巧
2.5.1Java數(shù)據(jù)的輸出
2.5.2Java數(shù)據(jù)的輸入
2.5.3用JOptionPane類實(shí)現(xiàn)各種對話框
2.5.4Java程序運(yùn)行時間的計(jì)算
2.6Java數(shù)組
2.6.1一維數(shù)組
2.6.2二維數(shù)組
2.6.3數(shù)組工具類(Arrays)
2.7Java編程作業(yè)的提交要求
2.8本章小結(jié)
2.9自測題
2.10編程實(shí)訓(xùn)
第3章面向?qū)ο缶幊袒A(chǔ)
3.1面向?qū)ο蠹夹g(shù)簡介
3.1.1面向過程和面向?qū)ο?
3.1.2面向?qū)ο蟮奶卣?
3.2類
3.2.1類的定義
3.2.2成員變量
3.2.3局部變量
3.2.4成員方法的定義
3.2.5成員方法的調(diào)用
3.2.6成員方法的遞歸調(diào)用
3.3對象的實(shí)例化與清除
3.3.1構(gòu)造方法的定義
3.3.2構(gòu)造方法的調(diào)用——實(shí)例化對象
3.3.3垃圾回收機(jī)制
3.3.4Java程序的優(yōu)化
3.4引入類和定義包
3.4.1包概念的提出
3.4.2JDK API常見包介紹
3.4.3package和import語句
3.5Java文檔注釋
3.5.1常用的Javadoc標(biāo)記
3.5.2利用javadoc.exe生成API文檔的方法
3.5.3在Eclipse中生成API文檔的方法
3.6UML
3.6.1UML簡介
3.6.2UML 建模工具
3.6.3在MyEclipse下進(jìn)行UML建模
3.7俄羅斯方塊程序的閱讀(Tetris.java)
3.8本章小結(jié)
3.9自測題