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