Java語言程序設(shè)計上機實踐教程
定 價:36.8 元
叢書名:普通高等教育“十三五”規(guī)劃教材 公共基礎(chǔ)課系列
本書是北師大計算機基礎(chǔ)課《Java語言程序設(shè)計》主教材的配套用書,既可作為主教材的配套資源,也能獨立使用。本書共包含2大模塊。第1個模塊是知識點簡介、習(xí)題與上機實訓(xùn),第2個模塊是針對習(xí)題的解答及上機實訓(xùn)題目的參考代碼。從知識體系看,本書內(nèi)容主要面向3個層次:①第1層次的內(nèi)容主要面向零基礎(chǔ)學(xué)習(xí)者,從Java程序的基本結(jié)構(gòu)、基礎(chǔ)語句、表達式運算符入手,到函數(shù)結(jié)束。這一層次以程序設(shè)計中基本邏輯思維模式的形成作為主要培養(yǎng)目標(biāo),以結(jié)構(gòu)化程序設(shè)計的實現(xiàn)為培養(yǎng)手段。②第2個層次的內(nèi)容主要針對面向?qū)ο蟪绦蛟O(shè)計的相關(guān)內(nèi)容,重要闡述了類、對象、繼承、多態(tài)等概念及其實現(xiàn)技術(shù),同時介紹了Java程序設(shè)計中主要的類庫、線程與接口的概念。這一層次以抽象化、繼承、多態(tài)、并發(fā)等思維模式的形成為主要培養(yǎng)目標(biāo),以程序設(shè)計中類、對象、線程作為培養(yǎng)手段。③第3層次的內(nèi)容主要面向?qū)嶋H應(yīng)用,保證學(xué)習(xí)者“學(xué)有所用”,重點闡述了Java中的圖形界面及多媒體技術(shù)、輸入輸出流與文件管理、網(wǎng)絡(luò)編程、數(shù)據(jù)庫訪問技術(shù),甚至在最后簡介了在信息系統(tǒng)建設(shè)中非常重要的JSP技術(shù)。這一層次以實用性、面向?qū)嵺`和具體問題為聚焦點,希望學(xué)習(xí)者能在制作小型、有實用價值的小程序的過程中體驗到成功的快樂,真正地認(rèn)識到Java程序設(shè)計的價值,從而激發(fā)出強烈的學(xué)習(xí)動機。本書以思考題、程序改錯、程序填空題為基礎(chǔ),強化上機實訓(xùn),一方面,能夠幫助學(xué)習(xí)者自主診斷,查漏補缺;另一方面,由于在組織體例和內(nèi)容設(shè)計上還注意“由淺入深”、“問題導(dǎo)入”,有助于引導(dǎo)學(xué)習(xí)者思考,促使學(xué)習(xí)者以更規(guī)范的模式完成Java編程。
教材體例上,確立了“編程基礎(chǔ)知識”→“面向?qū)ο蟪绦蛟O(shè)計”→“實際應(yīng)用”的組織結(jié)構(gòu),適當(dāng)強化了結(jié)構(gòu)化程序設(shè)計的內(nèi)容,對函數(shù)概念及其設(shè)計技術(shù)進行了詳細剖析,同時強化了對Java程序“實用性”的介紹,以促使學(xué)習(xí)者更快捷地形成邏輯思維體系,并真正地實現(xiàn)“學(xué)以致用”
前 言計算機和網(wǎng)絡(luò)技術(shù)日益普及,計算機中的思維方式、解決問題的方法已經(jīng)逐漸向其他領(lǐng)域滲透,并影響了其他學(xué)科,促進了相關(guān)學(xué)科的發(fā)展,甚至形成了一些交叉學(xué)科。因此,計算機技術(shù)已經(jīng)不僅僅是一種工具,而是逐步演化為一種思維習(xí)慣,在以計算機處理問題的過程中蘊含著方法論。計算思維的理念就是在這一歷史條件下提出來并獲得了重要發(fā)展的。2010年7月19日~20日在西安交通大學(xué)舉辦的“九校聯(lián)盟計算機基礎(chǔ)課程研討會”上,陳國良院士做了“計算思維能力研究培養(yǎng)”的報告,強調(diào)了“計算思維”能力培養(yǎng)在當(dāng)前大學(xué)計算機基礎(chǔ)課教學(xué)中的重要意義,強調(diào)了計算機科學(xué)中的思維方式、操作方法對現(xiàn)代化人才培養(yǎng)的重要價值,為新時期大學(xué)計算機基礎(chǔ)課教學(xué)指明了方向。2012年,高教司啟動了“以計算思維為導(dǎo)向的大學(xué)計算機基礎(chǔ)課程”教改立項工作,共有22個項目同時獲得教育部立項,標(biāo)志著以計算思維為導(dǎo)向的大學(xué)計算機培養(yǎng)模式正式啟動。然而,對如何落實“學(xué)生計算思維能力培養(yǎng)”戰(zhàn)略目標(biāo)的問題,在具體教學(xué)實踐中卻面臨著嚴(yán)峻挑戰(zhàn)。不同的院校、不同的專業(yè)、不同層次的學(xué)習(xí)者具有不同的個人發(fā)展需要、專業(yè)發(fā)展要求,因此,“一刀切”、“一蹴而就”的培養(yǎng)方式肯定行不通。對學(xué)生計算思維能力的培養(yǎng),應(yīng)該結(jié)合學(xué)校自身發(fā)展的特點、學(xué)生專業(yè)發(fā)展的要求分層分級地開展。從師范類學(xué)校的培養(yǎng)目標(biāo)看,在學(xué)生中加強媒體素材處理能力和邏輯思維能力、數(shù)據(jù)分析能力的培養(yǎng),將是落實“計算思維能力”培養(yǎng)的重要突破口。從學(xué)生個人發(fā)展的需要看,媒體素材的處理能力是對未來教師的必然要求,邏輯思維能力與數(shù)據(jù)分析能力則是學(xué)生在未來參與實證性定量科研活動的必備技能。從面向?qū)W生和院系教師的調(diào)研報告看,強化這3個方面能力的培養(yǎng)是有價值的,是符合學(xué)生和院系要求的。面向計算機邏輯思維能力培養(yǎng)方面的教學(xué),對課程的知識學(xué)習(xí)僅僅是教學(xué)目的之一,更重要的是要強調(diào)其過程性、工具性和思維習(xí)慣的培養(yǎng)。因此,對計算機類課程的學(xué)習(xí)絕不是僅讓學(xué)生記住幾個操作菜單、背誦幾段概念就解決問題的,而是需要師生在“用中學(xué)”、“做中學(xué)”,在利用信息技術(shù)獲取信息、整合信息的過程中,潛移默化地得到提升,高度重視培養(yǎng)學(xué)生模仿計算機的處理模式和方法解決社會現(xiàn)實問題的能力。因此,要在優(yōu)化學(xué)生的思維模式、提升其信息意識方面進行更深入地探索,以全面地培養(yǎng)學(xué)生的計算機能力和信息技術(shù)應(yīng)用能力,促使學(xué)生“在應(yīng)用信息技術(shù)過程中學(xué)習(xí)信息技術(shù)”。基于以上觀點,我們于2010年底成立了計算機公共課教改課題組,不斷地調(diào)整計算機基礎(chǔ)課的課程體系、教學(xué)模式和測評方式。逐步形成了以下4點共識:(1)課程內(nèi)容要與時俱進,大約每3年完成一輪課程體系改革。全面改革并加深課程內(nèi)容,要考慮到與基礎(chǔ)教育計算機教學(xué)的銜接性,實施分層教學(xué);要適應(yīng)時代的發(fā)展,加入一些新的最新發(fā)展的內(nèi)容;課程的內(nèi)容和案例要體現(xiàn)教育的特點,多介紹教育上的實用軟件,從人文的角度解析信息技術(shù)。(2)加強教學(xué)資源建設(shè);谧钚掳娴恼n程體系,編寫適應(yīng)新版課程體系的教材;采用共建共享的方法,建設(shè)課程資源,組織所有參與授課的教師,建設(shè)內(nèi)容完備的網(wǎng)絡(luò)課程。對信息技術(shù)課程中的關(guān)鍵操作、典型案例都要錄制微視頻,并按照網(wǎng)絡(luò)課程的規(guī)范加以組織,使其為同學(xué)們的自主學(xué)習(xí)提供支持,并適應(yīng)不同層次的學(xué)生的需要。(3)改革教學(xué)模式。基于教材和網(wǎng)絡(luò)課程、微視頻,以流媒體形式開展微課程授課,促使學(xué)生學(xué)習(xí)的個性化,促進學(xué)生自主學(xué)習(xí)能力的提高。根據(jù)各院系學(xué)生的不同專業(yè)背景,設(shè)計出一些具有學(xué)科特色的任務(wù),讓學(xué)生在完成任務(wù)的過程中增強信息意識和提升信息技能;通過任務(wù)驅(qū)動,激發(fā)學(xué)生的動機,促進學(xué)習(xí)的轉(zhuǎn)化和遷移。 (4)改革測評模式。對信息技術(shù)能力的培養(yǎng),應(yīng)同時兼顧知識與技能;對信息技術(shù)能力的評價,應(yīng)該注重形成性評價與總結(jié)性評價相結(jié)合,要更加關(guān)注同學(xué)們的日常應(yīng)用能力。為此,我們與萬維捷通軟件技術(shù)有限公司合作,研制了“北京師范大學(xué)計算機基礎(chǔ)課測評系統(tǒng)”,在此系統(tǒng)的支持下,構(gòu)建了一套能夠支持學(xué)生日常自主測評的資源庫,逐步形成穩(wěn)定的題庫資源,支持師生日常的自主學(xué)習(xí)和自主測評。以計算機處理問題的模式來思考問題,對現(xiàn)實問題抽象化并建構(gòu)有效的模型來解決現(xiàn)實問題是計算思維能力培養(yǎng)的關(guān)鍵內(nèi)容。在這一體系中,以高級語言程序設(shè)計為基礎(chǔ)的邏輯思維模式的形成是計算思維能力培養(yǎng)的核心。作為高級語言程序設(shè)計三大編程語言之一的Java,因其嚴(yán)謹(jǐn)?shù)臄?shù)據(jù)結(jié)構(gòu)、嚴(yán)格的邏輯體系、豐富的類庫資源而深受程序設(shè)計人員的喜愛,在信息化發(fā)展的各個領(lǐng)域都具有非常重要的作用。因此,《Java語言程序設(shè)計》被列為北師大計算機基礎(chǔ)課教學(xué)的核心課程。然而,在我們組織教學(xué)活動的過程中,卻經(jīng)常為如何選到一本好用的Java教材而困惑?v觀市場上的Java教材,多數(shù)都是面向計算機相關(guān)專業(yè)學(xué)習(xí)者的。由于其定位的學(xué)習(xí)者已經(jīng)具備了一定水平的編程知識基礎(chǔ),而且還會配備實踐應(yīng)用性較強的后續(xù)課程(比如JSP開發(fā))。因此,教材中通常不太重視對程序基本邏輯結(jié)構(gòu)的講解,而是把重點放在了面向?qū)ο蟛糠,?dǎo)致很多學(xué)習(xí)者在感到“入門很難”、“學(xué)得很苦”。與此同時,由于時缺乏對程序設(shè)計實用性和應(yīng)用范疇方面的介紹,很多學(xué)生反應(yīng):不知道學(xué)了Java“到底有什么用”“為什么要學(xué)Java”,進而影響了其學(xué)習(xí)動機。基于以上問題及改革思路,在北京師范大學(xué)教務(wù)處的支持下,計算機基礎(chǔ)課團隊決定組織教師撰寫新版的《Java語言程序設(shè)計》系列教材,把我們的改革思路和教學(xué)理念滲透到新教材中,并期望我們的經(jīng)驗和成果能夠為兄弟院校的計算機基礎(chǔ)課教學(xué)提供一些借鑒。本書共分9章,第1章~4章由馬秀麟主筆完成,第5~6章由鄔彤主筆完成,第7~9章由曹良亮主筆完成,北師大教育技術(shù)學(xué)專業(yè)的碩士研究生毛荷、王翠霞、蘇幼園、梁靜等同學(xué)進行了文字校對、案例初核,張慶利老師終審了教材中的所有案例。最后,全書由馬秀麟負(fù)責(zé)統(tǒng)稿和最終審定。本套書的出版得益于多方面的幫助。首先,從事北京師范大學(xué)計算機基礎(chǔ)課教學(xué)的全體教師的長期積累和經(jīng)驗是本書的堅實基礎(chǔ),基于多名一線教師10年開展Java類程序設(shè)計教學(xué)的案例、感受和積累,在相關(guān)教師教學(xué)講義的基礎(chǔ)上,我們組織了本套《Java語言程序設(shè)計》教材。其次,鑒于Java程序設(shè)計語言的教學(xué)規(guī)律和上機實訓(xùn)等實踐環(huán)節(jié)的需要,我們決定同時出版《Java語言程序設(shè)計》主教材和《Java程序設(shè)計習(xí)題&上機實訓(xùn)教程》配套教材,以適應(yīng)課內(nèi)教學(xué)與上機實訓(xùn)、輔助思考的需要。第三,從教材體例上,確立了“編程基礎(chǔ)知識”→“面向?qū)ο蟪绦蛟O(shè)計”→“實際應(yīng)用”的組織結(jié)構(gòu),適當(dāng)強化了結(jié)構(gòu)化程序設(shè)計的內(nèi)容,對函數(shù)概念及其設(shè)計技術(shù)進行了詳細剖析,同時強化了對Java程序“實用性”的介紹,以促使學(xué)習(xí)者更快捷地形成邏輯思維體系,并真正地實現(xiàn)“學(xué)以致用”。對于本書,雖然編者盡了很大的努力,盡量避免出現(xiàn)問題。然而由于諸多因素的制約,難免有疏漏錯誤之處,誠懇地請各位老師和同學(xué)批評指正。編者的Email:maxl@bnu.edu.cn。北師大計算機基礎(chǔ)課課程主任:馬秀麟 2018年2月于京師園
馬秀麟,男,,教育技術(shù)學(xué)博士,北京師范大學(xué)教育技術(shù)學(xué)院副教授,北京師范大學(xué)信息技術(shù)公共課課程主任;主要從事網(wǎng)絡(luò)課程開發(fā)、信息技術(shù)教育領(lǐng)域的研究。
目 錄 第1章 JAVA程序設(shè)計入門 11.1 核心知識點及實訓(xùn)指導(dǎo) 11.1.1 關(guān)鍵知識點 11.1.2 知識網(wǎng)絡(luò)圖 11.1.3 學(xué)習(xí)策略與建議 11.2 JAVA運行環(huán)境構(gòu)建與測試 21.2.1 安裝JDK軟件 21.2.2 安裝與配置Eclipse開發(fā)環(huán)境 41.2.3 以Eclipse編輯并運行程序 51.2.4 Eclipse環(huán)境下的程序調(diào)試 121.3 習(xí)題&思考 141.3.1 單選題 141.3.2 思考題 141.4 上機實訓(xùn)題 151.4.1 Java環(huán)境填空題 151.4.2 編寫程序與Java環(huán)境配置 15第2章 JAVA程序的基本語句及語法結(jié)構(gòu) 162.1 核心知識點及實訓(xùn)指導(dǎo) 162.1.1關(guān)鍵知識點 162.1.2知識網(wǎng)絡(luò)圖 162.1.3學(xué)習(xí)策略與建議 162.2 習(xí)題&思考 172.2.1單選題 172.2.2思考題 182.3 上機實訓(xùn)題 182.3.1程序改錯題 182.3.2程序填空題 222.3.3程序設(shè)計題 27第3章 函數(shù) 283.1 核心知識點及實訓(xùn)指導(dǎo) 283.1.1關(guān)鍵知識點 283.1.2知識網(wǎng)絡(luò)圖 283.1.3學(xué)習(xí)策略與建議 283.2 習(xí)題&思考 293.2.1 單選題 293.2.2 思考題 303.3 上機實訓(xùn)題 303.3.1程序改錯題 303.3.2程序填空題 363.3.3程序設(shè)計題 42第4章 面向?qū)ο蟪绦蛟O(shè)計 434.1 核心知識點及實訓(xùn)指導(dǎo) 434.1.1關(guān)鍵知識點 434.1.2知識網(wǎng)絡(luò)圖 434.1.3學(xué)習(xí)策略與建議 434.2 習(xí)題&思考 444.2.1單選題 444.2.2思考題 454.3 上機實訓(xùn)題 454.3.1程序改錯題 454.3.2程序填空題 514.3.3程序設(shè)計題 59第5章 重要JAVA類及類庫簡介 615.1 核心知識點及實訓(xùn)指導(dǎo) 615.1.1關(guān)鍵知識點 615.1.2知識網(wǎng)絡(luò)圖 615.1.3學(xué)習(xí)策略與建議 615.2 習(xí)題&思考 625.2.1單選題 625.2.2思考題 635.3 上機實訓(xùn)題 635.3.1程序改錯題 635.3.2程序填空題 665.3.3程序設(shè)計題 70第6章 圖形用戶接口及多媒體 716.1 核心知識點及實訓(xùn)指導(dǎo) 716.1.1關(guān)鍵知識點 716.1.2知識網(wǎng)絡(luò)圖 716.1.3學(xué)習(xí)策略與建議 716.2 習(xí)題&思考 726.2.1單選題 726.2.2思考題 726.3 上機實訓(xùn)題 736.3.1程序改錯題 736.3.2程序填空題 776.3.3程序設(shè)計題 80第7章 輸入/輸出流與文件 817.1 核心知識點及實訓(xùn)指導(dǎo) 817.1.1關(guān)鍵知識點 817.1.2知識網(wǎng)絡(luò)圖 817.1.3學(xué)習(xí)策略與建議 817.2 習(xí)題&思考 827.2.1單選題 827.2.2思考題 827.3 上機實訓(xùn)題 837.3.1程序改錯題 837.3.2程序填空題 877.3.3程序設(shè)計題 89第8章 JAVA的網(wǎng)絡(luò)編程 908.1 核心知識點及實訓(xùn)指導(dǎo) 908.1.1關(guān)鍵知識點 908.1.2知識網(wǎng)絡(luò)圖 908.1.3學(xué)習(xí)策略與建議 908.2 習(xí)題&思考 918.2.1單選題 918.2.2思考題 918.3 上機實訓(xùn)題 928.3.1程序改錯題 928.3.2程序填空題 958.3.3程序設(shè)計題 99第9章 JAVA與數(shù)據(jù)庫 1009.1 核心知識點及實訓(xùn)指導(dǎo) 1009.1.1關(guān)鍵知識點 1009.1.2知識網(wǎng)絡(luò)圖 1009.1.3學(xué)習(xí)策略與建議 1009.2 習(xí)題&思考 1019.2.1單選題 1019.2.2思考題 1019.3 上機實訓(xùn)題 1029.3.1程序改錯題 1029.3.2程序填空題 1079.3.3程序設(shè)計題 112參考答案 113第1章 JAVA程序設(shè)計入門 1131.1習(xí)題&思考 1131.2上機實訓(xùn)題 114第2章 JAVA程序的基本語句及語法結(jié)構(gòu) 1162.1習(xí)題&思考 1162.2上機實訓(xùn)題 117第3章 函 數(shù) 1243.1習(xí)題&思考 1243.2上機實訓(xùn)題 125第4章 面向?qū)ο蟪绦蛟O(shè)計 1334.1習(xí)題&思考 1334.2上機實訓(xùn)題 135第5章 重要JAVA類及類庫簡介 1485.1習(xí)題&思考 1485.2上機實訓(xùn)題 151第6章 圖形用戶接口及多媒體 1606.1習(xí)題&思考 1606.2上機實訓(xùn)題 163第7章 輸入/輸出流與文件 1717.1習(xí)題&思考 1717.2上機實訓(xùn)題 172第8章 JAVA的網(wǎng)絡(luò)編程 1798.1習(xí)題&思考 1798.2上機實訓(xùn)題 181第9章 JAVA與數(shù)據(jù)庫 1899.1習(xí)題&思考 1899.2上機實訓(xùn)題 191參考文獻 197