Java程序設(shè)計(第3版)教案全套 單元設(shè)計 徐紅 單元1-6 Java語言程序設(shè)計基礎(chǔ)- 綜合設(shè)計_第1頁
Java程序設(shè)計(第3版)教案全套 單元設(shè)計 徐紅 單元1-6 Java語言程序設(shè)計基礎(chǔ)- 綜合設(shè)計_第2頁
Java程序設(shè)計(第3版)教案全套 單元設(shè)計 徐紅 單元1-6 Java語言程序設(shè)計基礎(chǔ)- 綜合設(shè)計_第3頁
Java程序設(shè)計(第3版)教案全套 單元設(shè)計 徐紅 單元1-6 Java語言程序設(shè)計基礎(chǔ)- 綜合設(shè)計_第4頁
Java程序設(shè)計(第3版)教案全套 單元設(shè)計 徐紅 單元1-6 Java語言程序設(shè)計基礎(chǔ)- 綜合設(shè)計_第5頁
已閱讀5頁,還剩53頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第1頁共9頁《Java程序設(shè)計》課程教學(xué)單元設(shè)計單元1Java語言程序設(shè)計基礎(chǔ)授課教師:Java課程組授課班級:單元總學(xué)時:10教學(xué)條件軟件開發(fā)平臺、投影設(shè)備、廣播軟件教學(xué)素材教材、參考教材、課件、授課錄像教學(xué)目標(biāo)設(shè)計知識目標(biāo):了解面向?qū)ο蠹夹g(shù)的發(fā)展歷史;掌握搭建集成環(huán)境Eclipse方法;掌握簡單調(diào)試與排錯技術(shù);掌握使用運算符和表達(dá)式進(jìn)行數(shù)值計算程序的方法;掌握使用選擇結(jié)構(gòu)解決簡單的實際問題并編寫相應(yīng)程序的方法;理解清楚循環(huán)的幾個要素(循環(huán)初始值、循環(huán)條件、循環(huán)體、循環(huán)增值語句);能正確區(qū)分和選擇三種不同的循環(huán)語句;理解循環(huán)嵌套及多重循環(huán)的顯示。能力目標(biāo):能會按照J(rèn)ava語言程序簡單開發(fā)過程在Eclipse編程工具中進(jìn)行編程;能會使用標(biāo)識符命名規(guī)則和運算符的優(yōu)先級;能會使用各種常量、變量定義和方法定義;能會使用if語句解決實際問題;能會使用switch…case語句解決實際問題;運用選擇結(jié)構(gòu)進(jìn)行程序設(shè)計;應(yīng)用while、do-while和for語句編寫循環(huán)結(jié)構(gòu)程序;能會使用累加器、計數(shù)器、標(biāo)志標(biāo)量;運用循環(huán)結(jié)構(gòu)進(jìn)行程序設(shè)計。重點:下載并安裝JDK,設(shè)置環(huán)境變量,開發(fā)Java程序的過程;各種基本數(shù)據(jù)類型轉(zhuǎn)換及使用;兩種分支語句的使用;三種循環(huán)語句的使用。難點:(1)Java開發(fā)環(huán)境的配置;(2)分支語句的使用;(3)循環(huán)語句的嵌套使用。教學(xué)內(nèi)容任務(wù)一:搭建開發(fā)環(huán)境;任務(wù)二:初入Java世界;任務(wù)三:求扇形面積和周長程序設(shè)計;任務(wù)四:計算月份天數(shù)程序設(shè)計;任務(wù)五:猜數(shù)字游戲程序設(shè)計。教學(xué)過程設(shè)計任務(wù)一:搭建開發(fā)環(huán)境(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入運行一個Java演示程序,了解學(xué)生對編程認(rèn)識程度,激發(fā)學(xué)習(xí)熱情。教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:Java歷史;Java特點;Java實現(xiàn)機(jī)制;Java的體系結(jié)構(gòu);集成環(huán)境Eclipse。教學(xué)目的:理解Java實現(xiàn)機(jī)制;掌握J(rèn)ava體系結(jié)構(gòu);掌握安裝開發(fā)工具JDK;掌握搭建集成環(huán)境Eclipse的方法。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介作為一個開發(fā)者在使用任何一種語言或工具進(jìn)行開發(fā)工作之前都要配置好開發(fā)環(huán)境,進(jìn)行Java程序開發(fā)也不例外。JavaDevelopmentKit(JDK)是Sun公司針對Java開發(fā)員的軟件開發(fā)工具包。自從Java推出以來,JDK已經(jīng)成為使用最廣泛的JavaSDK(Softwaredevelopmentkit)。JAVA的開發(fā)工具有很多,最簡單的有記事本與控制臺的組合,另外還有UltraEdit,JCreator,NetbeansIDE,Jav,JBuilder和Eclipse等。在這些工具當(dāng)中集成開發(fā)環(huán)境的使用都是類似的,在學(xué)習(xí)過程中只需要熟練掌握一種的使用方法就可以了。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析JDK工具包含了編譯、運行及調(diào)試Java程序所需要的工具。JDK是其他Java開發(fā)工具的基礎(chǔ)。也就是說,在安裝其他開發(fā)工具之前,必須首先安裝JDK。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識Java歷史和特點;Java的實現(xiàn)機(jī)制;Java的體系結(jié)構(gòu)。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施提供下載的JDK;安裝JDK到本機(jī);配置系統(tǒng)環(huán)境變量PATH;配置系統(tǒng)環(huán)境變量CLASSPATH;下載Eclipse并安裝。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流JDK的系統(tǒng)環(huán)境變量的配置。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)清楚JDK的目錄結(jié)構(gòu),掌握J(rèn)DK的安裝以及環(huán)境變量的配置。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)為什么JDK默認(rèn)安裝后,會有兩個JRE文件夾,兩個JRE文件夾有什么區(qū)別?-分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)二:初入Java世界(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入運行任務(wù)一中的WelcometoJavaWorld!演示程序,完成該程序的編寫。教師演示項目展示教師:演示學(xué)生:動手實踐告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:Java程序結(jié)構(gòu);Java程序編寫及運行過程。教學(xué)目標(biāo):理解什么是程序;會用Eclipse開發(fā)Java程序。啟發(fā)提問案例演示分組討論教師演示教師:演示學(xué)生:分組討論任務(wù)簡介編寫一個程序,運行時在控制臺輸出“WelcometoJavaWorld!”信息。啟發(fā)提問課件演示教師:講授學(xué)生:思考參與發(fā)言任務(wù)分析在開始編寫Java程序之前,首先應(yīng)該熟悉它的開發(fā)過程;首先,編寫Java源文件。編寫完成后的源文件應(yīng)以.java為擴(kuò)展名保存起來;其次,使用Eclipse編譯并運行Java源程序。教師演示討論歸納課件演示教師:演示學(xué)生:思考動手實踐參與發(fā)言支撐知識Java程序結(jié)構(gòu);使用Elipse創(chuàng)建Java程序步驟。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施使用Eclipse開發(fā)簡單Java程序:打開Eclipse,選擇工作空間;選擇“File”—“New”—“JavaProject”,創(chuàng)建Java應(yīng)用程序;在應(yīng)用程序的src結(jié)點上右擊,選擇“New”—“Class”;在main方法中輸入執(zhí)行語句,然后選擇“運行”按鈕。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流Java應(yīng)用程序的開發(fā)步驟。個別演示分組討論教師:總結(jié)學(xué)生:演示課堂實訓(xùn)在Eclipse中編寫一個輸出“ILoveProgram”的Java應(yīng)用程序。動手實踐分組實踐教師:任務(wù)提示學(xué)生:小組討論動手實踐課后作業(yè)編寫輸出用多行“*”組成的一個“十”字形。-分組學(xué)習(xí)提交代碼教學(xué)過程設(shè)計任務(wù)三:求扇形面積和周長程序設(shè)計(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入在進(jìn)行代碼編寫的時候,怎樣區(qū)分保存的是什么樣的數(shù)據(jù),怎樣讀取保存的數(shù)據(jù),又怎講通過去讀的數(shù)據(jù)進(jìn)行運算呢?教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:Java語言標(biāo)識符和關(guān)鍵字;Java注釋;Java語言數(shù)據(jù)類型;Java常量和變量;Java語言運算符與表達(dá)式。教學(xué)目標(biāo):正確定義與使用變量、常量;正確使用運算符與表達(dá)式進(jìn)行數(shù)值計算程序的處理。教師啟發(fā)講解課件演示教師:教授學(xué)生:思考任務(wù)簡介編寫程序程AreaAndPerimeterOfFan,當(dāng)程序運行時,從Eclipse中輸入扇形的半徑和角度,在控制臺輸出扇形的周長和面積。要求:扇形的周長只保留整數(shù)部分,舍掉小數(shù)部分。討論歸納課件演示教師:演示學(xué)生:思考參與發(fā)言任務(wù)分析該程序涉及常量和變量的定義和使用、變量間的算術(shù)運算、數(shù)據(jù)類型轉(zhuǎn)換(包括字符串與基本數(shù)據(jù)類型的轉(zhuǎn)換和基本數(shù)據(jù)類型之間的強(qiáng)制類型轉(zhuǎn)換)、基本的輸入/輸出操作和命令行參數(shù)的應(yīng)用。教師演示課件演示小組討論教師:演示學(xué)生:思考參與發(fā)言分組討論支撐知識Java中的標(biāo)識符和關(guān)鍵字;Java程序的注釋;Java語言的數(shù)據(jù)類型;Java中的常量;Java中的變量;類型轉(zhuǎn)換;運算符;表達(dá)式。討論歸納課件演示教師:演示學(xué)生:思考小組討論參與發(fā)言任務(wù)實施在Eclipse的項目中創(chuàng)建包com.task03,再創(chuàng)建類AreaAndPerimeterOfFan。在Main方法中定義所需要的變量和常量。從命令行參數(shù)接收輸入的數(shù)據(jù),并轉(zhuǎn)化為Float類型。根據(jù)扇形的公式求面積和周長。在控制臺輸出扇形面積和周長。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流掌握變量、常量的定義以及使用,能正確的完成表達(dá)式的運算,掌握數(shù)據(jù)類型轉(zhuǎn)換的三種情況。個別演示分組討論教師:總結(jié)學(xué)生:個別演示分享交流課堂實訓(xùn)從鍵盤輸入小寫字母,回顯并輸出其對應(yīng)的大寫字母。提示:從鍵盤上接收一個字符的方法為System.in.read(),其中read()方法的返回值為int,即輸入字符的ASCII碼值,通過強(qiáng)制類型將其轉(zhuǎn)換成字符型。動手實踐分組實踐教師:任務(wù)提示學(xué)生:小組討論課后作業(yè)編寫一個程序,從鍵盤輸入兩個數(shù),求它們的和并輸出;編寫程序,分別定義8種基本類型變量接收從鍵盤輸入的8個數(shù)據(jù),并將其輸出。-分組學(xué)習(xí)提交代碼教學(xué)過程設(shè)計任務(wù)四:計算月份天數(shù)程序設(shè)計(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入在程序編寫的過程中,并不是一直按要求從上往下執(zhí)行,有時根據(jù)不同的情況,要執(zhí)行不同的操作,怎樣實現(xiàn)?比如:如果“數(shù)據(jù)操作已經(jīng)掌握了”,則“學(xué)習(xí)分支控制流程”;如果“數(shù)據(jù)操作還沒有掌握”,則“繼續(xù)學(xué)習(xí)數(shù)據(jù)操作”。教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:順序結(jié)構(gòu);if條件結(jié)構(gòu);switch分支結(jié)構(gòu)。教學(xué)目標(biāo):掌握順序結(jié)構(gòu);掌握分支流程控制結(jié)構(gòu)的if條件結(jié)構(gòu)和switch分支結(jié)構(gòu)。教師啟發(fā)講解課件演示教師:演示學(xué)生:思考任務(wù)簡介編制計算某個月份的天數(shù)的程序。用if-else條件語句和switch分支語句分別實現(xiàn)。要求根據(jù)用戶輸入的月份,判斷出月份所包含的天數(shù)。討論歸納課件演示教師:總結(jié)學(xué)生:思考參與發(fā)言任務(wù)分析該程序涉及常量和變量的定義和使用、變量間的算術(shù)運算、數(shù)據(jù)類型轉(zhuǎn)換(包括字符串與基本數(shù)據(jù)類型的轉(zhuǎn)換)、基本的輸入/輸出操作、if-else條件語句和switch分支語句的應(yīng)用。教師演示課件演示小組討論教師:演示學(xué)生:分組討論支撐知識順序結(jié)構(gòu);if條件結(jié)構(gòu);switch分支語句。討論歸納課件演示教師:演示學(xué)生:小組討論參與發(fā)言任務(wù)實施獲得用戶在命令行輸入的月份,并轉(zhuǎn)換為整形;使用IF分支或switch判斷,2月28天,1月、3月、5月、7月、8月、10月、12月的天數(shù)是31天,其他月份是30天。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流掌握分支流程控制結(jié)構(gòu)的if條件結(jié)構(gòu)和switch分支結(jié)構(gòu)。個別演示分組討論教師:指導(dǎo)學(xué)生:個別演示課堂實訓(xùn)計算個人所得稅。設(shè)某人月收入為x元,假設(shè)個人所得稅征收方法如下:當(dāng)800<x≤1300時,應(yīng)征稅為(x-800)*5%;當(dāng)1300<x≤2800時,應(yīng)征稅為(x-800)*10%;當(dāng)2800<x≤5800時,應(yīng)征稅為(x-800)*15%;當(dāng)5800<x≤28000時,應(yīng)征稅為(x-800)*20%;當(dāng)28000<x時,應(yīng)征稅為(x-800)*30%。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論課后作業(yè)輸入三個整數(shù)x,y,z,請把這三個數(shù)由小到大輸出。程序分析:我們想辦法把最小的數(shù)放到x上,先將x與y進(jìn)行比較,如果x>y則將x與y的值進(jìn)行交換,然后再用x與z進(jìn)行比較,如果x>z則將x與z的值進(jìn)行交換,這樣能使x最小。-分組學(xué)習(xí)提交代碼教學(xué)過程設(shè)計任務(wù)五:猜字游戲程序設(shè)計(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入在程序編寫的過程中,并不是一直按要求從上往下執(zhí)行,有時相同的操作要多次執(zhí)行,怎樣實現(xiàn)?比如:猜數(shù)字構(gòu)建等式的時候可以猜多次,直到猜對。教師運行程序教師啟發(fā)-教師:講解學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:while循環(huán)結(jié)構(gòu);do-while循環(huán)結(jié)構(gòu);for循環(huán)結(jié)構(gòu);break和continue語句。教學(xué)目標(biāo):掌握循環(huán)流程控制結(jié)構(gòu)的while循環(huán)結(jié)構(gòu)、do-while循環(huán)結(jié)構(gòu)和for循環(huán)結(jié)構(gòu);掌握break和continue語句。教師啟發(fā)講解課件演示教師:演示學(xué)生:思考任務(wù)簡介編寫一個猜數(shù)字游戲程序,游戲規(guī)則要求給出一個等式,比如x*4=20,其中x是未知數(shù),編寫一個程序?qū)崿F(xiàn)求出x的一個數(shù)值使它滿足等式,并且輸出結(jié)果。要求:等式的兩個乘數(shù)的取值范圍是0-9,用for循環(huán)和while循環(huán)分別實現(xiàn)。討論歸納課件演示教師:總結(jié)學(xué)生:參與發(fā)言任務(wù)分析該程序涉及變量的定義和使用,關(guān)系運算符和關(guān)系表達(dá)式、數(shù)據(jù)類型轉(zhuǎn)換(包括字符串與基本數(shù)據(jù)類型的轉(zhuǎn)換)、基本的輸入/輸出操作、if-else條件語句和循環(huán)語句的應(yīng)用。教師演示課件演示小組討論教師:演示學(xué)生:思考支撐知識循環(huán)語句;while循環(huán)語句;do-while循環(huán)語句;for循環(huán)語句;多重循環(huán);break和continue跳轉(zhuǎn)語句。討論歸納課件演示教師:演示學(xué)生:小組討論參與發(fā)言任務(wù)實施從命令行參數(shù)獲取第二個乘數(shù)和乘法結(jié)果;通過for循環(huán)遍歷0-9之間的數(shù),查找能使等式成立的數(shù)字,如果找到則用break跳出循環(huán),否則直到for循環(huán)執(zhí)行完;輸出是否查找到符合要求的數(shù)字,以及數(shù)字的具體值。動手實踐分組實踐教師:指導(dǎo)學(xué)生:小組討論動手實踐分享交流掌握三種循環(huán)語句的基本結(jié)構(gòu),以及掌握循環(huán)語句的嵌套使用。個別演示分組討論教師:指導(dǎo)學(xué)生:個別演示課堂實訓(xùn)百雞問題:公雞5元/只,母雞3元/只,小雞3只/元,問100元買100只雞,公雞、母雞、小雞各幾只?動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論課后作業(yè)編寫程序,有1、2、3、4共4個數(shù)字,能組成多少個互不相同且無重復(fù)數(shù)字的三位數(shù)?都是多少?程序分析:可填在百位、十位、個位的數(shù)字都是1、2、3、4。組成所有的排列后再去掉不滿足條件的排列。。-分組學(xué)習(xí)提交代碼《Java程序設(shè)計》課程教學(xué)單元設(shè)計單元2面向?qū)ο蟪绦蛟O(shè)計授課教師:Java語言課程組授課班級:單元總學(xué)時:20教學(xué)條件軟件開發(fā)平臺、投影設(shè)備、廣播軟件教學(xué)素材參考教材、課件、授課錄像教學(xué)目標(biāo)設(shè)計知識目標(biāo):掌握類和對象的概念;理解面向?qū)ο蟪绦蛟O(shè)計思想;了解封裝在面向?qū)ο笏枷胫械淖饔?;掌握繼承的語法結(jié)構(gòu)和實現(xiàn)步驟;掌握多態(tài)的定義和適用范圍;掌握抽象的概念及抽象類的定義和使用;掌握接口的定義和實現(xiàn)方式。能力目標(biāo):能會定義和使用類中的方法;運用面向?qū)ο笏枷敕治鋈蝿?wù)需求;運用封裝在面向?qū)ο笏枷胫械淖饔脕斫鉀Q實際問題;能會使用繼承來提高面向?qū)ο笾械某绦驍U(kuò)展性和可維護(hù)性;應(yīng)用多態(tài)在程序中的使用范圍和步驟來解決實際問題;能會使用抽象方法來完成程序設(shè)計;應(yīng)用面向接口編程的思想解決實際問題。重點:封裝在面向?qū)ο笏枷胫械淖饔?;繼承在面向?qū)ο笏枷胫械淖饔门c應(yīng)用;多態(tài)在面向?qū)ο笏枷胫械膽?yīng)用;接口在面向?qū)ο笏枷胫械淖饔?。難點:構(gòu)造方法的應(yīng)用;多態(tài)的應(yīng)用。教學(xué)內(nèi)容設(shè)計任務(wù)一:描述“人類”信息程序設(shè)計;任務(wù)二:借書卡程序設(shè)計;任務(wù)三:保護(hù)人的“隱私”程序設(shè)計;任務(wù)四:員工繼承關(guān)系程序設(shè)計;任務(wù)五:模擬USB接口程序設(shè)計。教學(xué)過程設(shè)計任務(wù)一:描述“人類”信息程序設(shè)計(創(chuàng)建、使用類和對象)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入Java程序設(shè)計采用的是面向?qū)ο蟪绦蛟O(shè)計(ObjectedOrientedProgramming,OOP)的方法。OOP是目前軟件開發(fā)的主流方法,解決問題過程中,需要采用面向?qū)ο蟮姆治龇椒ê兔嫦驅(qū)ο蟮脑O(shè)計方法。類的描述是使用OOP解決問題的基礎(chǔ)。教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:類與對象的概念與特征、屬性和方法;類與對象的關(guān)系;定義類的語法;創(chuàng)建類的對象;使用對象的步驟。教學(xué)目標(biāo):掌握類和對象的特征;會創(chuàng)建和使用類和對象。教師啟發(fā)講解課件演示教師:演示講解學(xué)生:思考任務(wù)簡介人是這個社會的主體,在系統(tǒng)開發(fā)過程中經(jīng)常涉及到人類。人的信息包括姓名、年齡、性別、體重、家庭地址等。請對“人類”進(jìn)行類描述,并用Java代碼實現(xiàn)。討論歸納課件演示教師:演示、總結(jié)學(xué)生:思考參與發(fā)言任務(wù)分析類包含屬性和行為。屬性指人的姓名、性別、年齡、體重、家庭地址。行為指人吃飯、走路。教師演示課件演示小組討論教師:演示學(xué)生:思考參與發(fā)言分組討論支撐知識類與對象的概念與關(guān)系;類的定義;創(chuàng)建對象;使用對象。討論歸納課件演示教師:演示教授學(xué)生:思考發(fā)言小組討論任務(wù)實施打開Eclipse,創(chuàng)建Person類;在類大括號內(nèi)進(jìn)行屬性定義;在Person類的main方法中,創(chuàng)建一個類的對象;利用創(chuàng)建的對象,使用對象名.屬性名形式進(jìn)行賦值;輸出對象的各個屬性值;運行程序。動手實踐分組實踐教師:演示指導(dǎo)學(xué)生:小組討論動手實踐分享交流熟悉類的結(jié)構(gòu),掌握類的創(chuàng)建,掌握對象的創(chuàng)建以及使用。個別演示分組討論教師:總結(jié)學(xué)生:演示課堂實訓(xùn)編寫一個電腦類,屬性包括品牌、型號,方法為顯示電腦信息,并測試類;編寫一個手機(jī)類,屬性包括手機(jī)品牌、手機(jī)型號,方法為顯示手機(jī)信息,并測試類。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)編寫學(xué)生類,輸出學(xué)生相關(guān)信息。屬性:姓名、年齡、參加課程、興趣。方法:顯示學(xué)生個人信息。編寫教師類,輸出教師相關(guān)信息。屬性:姓名、專業(yè)方向、教授課程、教齡。方法:顯示教師個人信息。-分組學(xué)習(xí)提交代碼教學(xué)過程設(shè)計任務(wù)二:借書卡程序設(shè)計(定義和使用類和方法)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入對象中的行為是通過方法來實現(xiàn)的,怎樣通過方法的書寫實現(xiàn)行為操作?教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:類的方法組成部分;定義和使用類的方法;構(gòu)造方法;方法重載;變量作用域;定義包和導(dǎo)入包的關(guān)鍵字。教學(xué)目標(biāo):會定義和使用類的方法;理解變量作用域;掌握方法重載;會創(chuàng)建包組織Java工程。教師啟發(fā)講解課件演示教師:演示學(xué)生:思考任務(wù)簡介借書卡是學(xué)生日常生活重要組成部分。每張借書卡信息包含賬號、持卡人姓名、身份證號碼、地址、已借書數(shù)、可借書數(shù)、本次借書數(shù)、本次還書數(shù)。方法有借書、還書和查詢。根據(jù)持卡人不同操作,顯示不同信息。當(dāng)借書操作后,顯示本次借書數(shù)及已借書數(shù);當(dāng)還書操作時,顯示本次還書數(shù)和已借書數(shù)。請用Java代碼實現(xiàn)。討論歸納課件演示教師:講解學(xué)生:思考參與發(fā)言任務(wù)分析Java中的方法描述了類的行為。本任務(wù)中的行為有借書、還書和查詢。在AccountCard類分別定義了3個方法:borrow(intcash)、TheReturn(intcash)、和query()。教師演示課件演示小組討論教師:分析演示學(xué)生:思考分組討論支撐知識類的方法組成部分;定義和使用類的方法;變量的作用域;定義包和導(dǎo)入包的關(guān)鍵字。討論歸納課件演示教師:講解演示學(xué)生:思考參與發(fā)言任務(wù)實施打開Eclipse,創(chuàng)建借書卡類;在類大括號內(nèi)進(jìn)行屬性定義;在類的大括號內(nèi)定義3個方法,表示借書、還書和查詢;在借書類的main方法中,創(chuàng)建一個借書卡類的對象;利用創(chuàng)建的借書卡對象,使用對象名.方法的形式調(diào)用方法,完成具體的功能;運行程序。動手實踐分組實踐教師:演示指導(dǎo)學(xué)生:小組討論動手實踐分享交流掌握方法的定義以及使用類的方法,理解變量的作用域,掌握方法重載。個別演示分組討論教師:總結(jié)學(xué)生:演示課堂實訓(xùn)編寫一個模擬煤氣表程序,實現(xiàn)設(shè)置上煤氣表讀數(shù)、設(shè)置本月煤氣表讀數(shù)、顯示上月煤氣表讀數(shù)、顯示本月煤氣表讀數(shù)、計算本月用煤氣數(shù)、顯示本月用煤氣數(shù)、計算本月用煤氣費用、顯示本月用煤氣費用的功能。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)編寫手機(jī)類(Phone),它可以下載音樂,可以播放這些音樂,可以進(jìn)行充電;編寫電池類(Cell),它可自動續(xù)電;編寫測試類(PhoneTest);編寫一個汽車類,它包含汽車基本屬性,如名稱、顏色、重量,并設(shè)計相應(yīng)的動作,如前進(jìn)、倒退。-分組學(xué)習(xí)提交代碼教學(xué)過程設(shè)計任務(wù)三:保護(hù)人的“隱私”程序設(shè)計(封裝的使用)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入人的年齡只能是大于0的數(shù)字,怎樣才能實現(xiàn)只有授權(quán)的人才能訪問呢?教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:為什么需要封裝;對屬性封裝;用構(gòu)造方法實現(xiàn)對象成員的初始化;教學(xué)目標(biāo):理解封裝的概念;掌握private關(guān)鍵字;掌握構(gòu)造方法;掌握方法重載。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介在現(xiàn)實中,人的年齡和體重都不能小于0;更恐怖的是如果忘記給名字賦值就會成為無名氏。這就好比要加工一件產(chǎn)品一樣,本身加工的原料就有問題,那么最終加工出來的產(chǎn)品也一定是一個不合格的產(chǎn)品。而導(dǎo)致這種錯誤的原因,就是因為程序在原料的入口出,并沒有加以檢驗,而加工的原料原本就是變質(zhì)的,這樣加工出來的產(chǎn)品也必然是一個不合要求的產(chǎn)品。借用封裝和構(gòu)造函數(shù)的重載可以解決這些問題,試用Java代碼實現(xiàn)。討論歸納課件演示教師:演示學(xué)生:思考分組討論任務(wù)分析本任務(wù)中要使用包來進(jìn)行Java程序中類的組織。把需要在一起工作的類放在同一包里,除了public修飾的類能夠被所有包中的類訪問外,缺省修飾符的類只能被其所在包中的類范文,不能在其包外訪問。包的這種組織方式把對類的訪問封鎖在一定的范圍,體現(xiàn)了Java面向?qū)ο蟮姆庋b性。教師演示課件演示小組討論教師:演示分析學(xué)生:思考發(fā)言分組討論支撐知識封裝;private關(guān)鍵字;public關(guān)鍵字。討論歸納課件演示教師:演示學(xué)生:思考小組討論參與發(fā)言任務(wù)實施打開Eclipse,創(chuàng)建一個包,在包內(nèi)定義一個類;在類的大括號內(nèi)定義屬性,在所有屬性定義前都加private關(guān)鍵字;在類中輸入private屬性的getter()和setter()方法定義;在類中定義相應(yīng)的功能方法;定義測試類,運行程序。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流了解封裝在面向?qū)ο笏枷胫械淖饔茫莆辗庋b的具體實現(xiàn)個別演示分組討論教師:總結(jié)學(xué)生:個別演示分享交流課堂實訓(xùn)通過封裝編寫B(tài)ook類。要求:類具有屬性書名、書號、主編、出版社、出版時間、頁數(shù)、價格,其中頁數(shù)不能少于200頁,否則輸出錯誤信息,并強(qiáng)制賦默認(rèn)值200;為各屬性設(shè)置賦值和取值方法;具有方法detail(),用來在控制臺輸出每本書信息;編寫B(tài)ookTest測試類。為Book對象的屬性賦初始值,然后調(diào)用Book對象的detail()方法,看輸出是否正確;給Book類增加構(gòu)造方法,同時對測試類也做相應(yīng)修改。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)采用封裝和構(gòu)造方法技術(shù)編寫銀行卡類。每張銀行卡信息包含年利率;帳號、持卡人姓名、身份證號碼、地址;交易金額、交易日期、余額。銀行卡類能夠存款、取款、查詢、購物支付、禁止透支。當(dāng)存款后,顯示原有余額、本次存款數(shù)額及最終存款余額;當(dāng)取款時,顯示原有余額、今日取款數(shù)額及最終存款余額。然后編寫測試類測試。-分組學(xué)習(xí)提交代碼教學(xué)過程設(shè)計任務(wù)四:員工繼承關(guān)系程序設(shè)計(繼承和多態(tài)的使用)(4課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入當(dāng)多個類定義中多數(shù)的屬性和方法定義是一致的時候,怎樣能夠減少重復(fù)代碼,實現(xiàn)具體功能?教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:繼承的概念及其實現(xiàn);super關(guān)鍵字、this關(guān)鍵字;多態(tài)的概念、靜態(tài)多態(tài)和動態(tài)多態(tài)、多態(tài)的實現(xiàn);最終類和抽象類。教學(xué)目標(biāo):掌握繼承的實現(xiàn);掌握super關(guān)鍵字;掌握多態(tài)的實現(xiàn)。教師啟發(fā)講解課件演示教師:演示學(xué)生:思考任務(wù)簡介員工信息管理系統(tǒng)中,職員類,具有姓名和性別兩個屬性。而職員有工人、經(jīng)理等。工人類除繼承父類的姓名和性別屬性外,還包含類別和是否有服裝津貼屬性。經(jīng)理類,還包含級別和是否配備交通工具屬性。請用Java代碼實現(xiàn)。討論歸納課件演示教師:演示講解學(xué)生:思考參與發(fā)言任務(wù)分析采用定義類的3個步驟,編寫好代碼后可知,員工類、行政人員類、經(jīng)理類有許多相同的語句代碼。在屬性方面,都包含了年齡、性別等重復(fù)的信息定義。換個思路,員工是一般性的概念,在定義類時,將經(jīng)理類、行政類中相同的屬性和方法抽象出來,集中放在員工類中,形成一種共享的機(jī)制,經(jīng)理類、行政類中只放自己特有的成員變量和成員方法,減少重復(fù)代碼。這樣的員工類稱為父類,行政人員類、經(jīng)理類稱為子類。子類繼承父類的非私有成員變量和成員方法。教師演示課件演示小組討論教師:講解演示學(xué)生:思考發(fā)言分組討論支撐知識類的繼承;類的多態(tài);最終類和抽象類。討論歸納課件演示教師:講解演示學(xué)生:思考發(fā)言小組討論任務(wù)實施打開Eclipse,包中定義員工類;在員工類中只定義共有的成員變量,定義類的構(gòu)造方法,定義共有的方法;定義行政類,經(jīng)理類,只定義自己特有屬性和方法,父類已有的成員變量和成員方法不再定義;編寫測試類,分別聲明對象進(jìn)行調(diào)用。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流掌握子類繼承父類的方法,能夠聲明父類變量,創(chuàng)建子類對象實現(xiàn)多態(tài)。個別演示分組討論教師:歸納總結(jié)學(xué)生:個別演示分享交流課堂實訓(xùn)編寫動物世界的繼承關(guān)系代碼。動物(Animal)包括山羊(Goat)和狼(Wolf),它們吃(eat)的行為不同,山羊吃草,狼吃肉,但走路(walk)的行為是一致的。通過繼承實現(xiàn)以上需求,并編寫AnimalTest測試類進(jìn)行測試。動手實踐分組實踐教師:布置任務(wù)學(xué)生:小組討論動手實踐課后作業(yè)編寫代碼實現(xiàn):球員分為籃球運動員、足球運動員和乒乓球運動員,各類運動員的方法各不相同。編寫測試類,測試類中包含testPlay方法,對各類運動員進(jìn)行運動測試。要依據(jù)運動員的不同,進(jìn)行相應(yīng)的運動。在main()方法中進(jìn)行測試。-分組學(xué)習(xí)提交代碼教學(xué)過程設(shè)計任務(wù)五:模擬USB接口程序設(shè)計(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入在子類繼承父類的時候,只能實現(xiàn)單一繼承,不能實現(xiàn)多繼承,怎樣實現(xiàn)多繼承?教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:接口的概念、實現(xiàn)、使用;接口與多態(tài)的關(guān)系;面向接口編程以及實現(xiàn);常量以及常量的定義規(guī)則。教學(xué)目標(biāo):掌握J(rèn)ava接口;理解Java接口與多態(tài)的關(guān)系;掌握面向接口編程的步驟;掌握接口中常量的使用。教師啟發(fā)講解課件演示教師:演示學(xué)生:思考任務(wù)簡介電腦主板上的USB接口有嚴(yán)格的規(guī)范,U盤、移動硬盤的內(nèi)部結(jié)構(gòu)不相同,每種盤的容量也不同,但U盤、移動硬盤都遵守了USB接口的規(guī)范,所以,在使用USB接口時,可以將U盤、移動硬盤插入任意一個USB接口,而不用擔(dān)心哪個USB接口是專門插哪個盤。請編寫程序,模擬使用USB接口的過程。討論歸納課件演示教師:演示學(xué)生:思考參與發(fā)言任務(wù)分析接口是一種比抽象類更抽象的特殊類,只包含常量和抽象方法,一般只表示一種“規(guī)范”。USB接口可以使用U盤、移動硬盤,完成插入、啟動、停止的功能。當(dāng)U盤或移動硬盤插入USB接口時,它們的表現(xiàn)是不一樣的。作為USB接口的接口,有兩個抽象方法,但無法實現(xiàn)具體的功能。這些功能留在U盤或移動硬盤實現(xiàn)類中去完成。教師演示課件演示小組討論教師:演示學(xué)生:思考分組討論支撐知識Java接口;接口與多態(tài)的關(guān)系;面向接口編程的步驟;接口中常量的使用。討論歸納課件演示教師:講授學(xué)生:小組討論參與發(fā)言任務(wù)實施打開Eclipse,定義一個USB接口,得到接口的框架;在接口中進(jìn)行抽象方法聲明;定義實現(xiàn)類:鼠標(biāo)類,移動存儲類、鍵盤類中實現(xiàn)USB接口所有方法;定義實現(xiàn)類:在類中實現(xiàn)USB接口的所有方法:start()、Conn()、stop();編寫測試類進(jìn)行測試。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流掌握接口的接口以及接口的使用;掌握接口與多態(tài)的關(guān)系個別演示分組討論教師:總結(jié)歸納學(xué)生:演示小組交流課堂實訓(xùn)設(shè)計幾何圖形(Shape)、矩形(Rectangle)、圓形(Circle)、正方形(Square),能夠利用接口和多態(tài)性計算幾何圖形的面積和周長,并顯示出來。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)編寫接口和實現(xiàn)類。動物(Animal)能夠動,鳥(Bird)會飛翔,老虎(Tiger)會跑,魚(Fish)會游泳。然后測試運行結(jié)果;編寫接口、抽象類和實現(xiàn)類。設(shè)計幾何圖形(Shape)、矩形(Rectangle)、圓形(Circle)、正方形(Square),能夠利用接口和多態(tài)性計算幾何圖形的面積和周長,并顯示出來。-分組學(xué)習(xí)提交代碼《Java程序設(shè)計》課程教學(xué)單元設(shè)計單元3數(shù)據(jù)與異常處理程序設(shè)計授課教師:Java語言課程組授課班級:單元總學(xué)時:10教學(xué)條件軟件開發(fā)平臺、投影設(shè)備、廣播軟件教學(xué)素材參考教材、課件、授課錄像教學(xué)目標(biāo)設(shè)計知識目標(biāo):掌握數(shù)組的聲明和創(chuàng)建;掌握java.util.Arrays類中的方法;掌握獲得字符創(chuàng)長度、比較、連接、提取、查詢字符串、大小寫轉(zhuǎn)化等操作的方法;掌握StringBuffer對象的常用方法;理解異常的概念和用途;掌握使用try-catch-finally語句結(jié)構(gòu);掌握自定義異常的創(chuàng)建和實現(xiàn)拋出的方法。能力目標(biāo):能會使用雙重for語句實現(xiàn)二維數(shù)組的循環(huán)操作;運用java.util.Arrays類進(jìn)行操作數(shù)組;運用字符串長度、比較、連接、提取、查詢字符串、大小寫轉(zhuǎn)化等方法對數(shù)組操作;運用StringBuffer字符串進(jìn)行追加及處理字符;能會使用try-catch-finally語句進(jìn)行異常處理;能會創(chuàng)建自定義異常和拋出自定義異常;能會區(qū)分異常處理和錯誤以及正確使用異常處理的優(yōu)點。重點:數(shù)組的使用、各種數(shù)組元素的操作;String與StringBuffer對象的常用方法;異常處理。難點:數(shù)組的遍歷、排序;自定義異常的創(chuàng)建和拋出。教學(xué)內(nèi)容設(shè)計任務(wù)一:學(xué)生成績管理程序設(shè)計;任務(wù)二:操作字符串程序設(shè)計;任務(wù)三:除法計算器程序設(shè)計;任務(wù)四:輸入學(xué)號異常處理程序。教學(xué)過程設(shè)計任務(wù)一:學(xué)生成績計算程序設(shè)計(數(shù)組存儲信息)(4課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入相同類型的一組數(shù)完成相同的操作,如果采用變量,重復(fù)代碼過多,此時可以采用數(shù)組。運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:聲明數(shù)組和創(chuàng)建;數(shù)組的初始化;數(shù)組元素的使用;main()方法參數(shù)使用;java.util.Arrays類操縱數(shù)組。教學(xué)目的:理解什么是數(shù)組;掌握一維數(shù)組的定義;會使用數(shù)組解決簡單問題。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介進(jìn)行學(xué)生成績管理計算,要對考試分?jǐn)?shù)進(jìn)行處理和查詢。編寫一個程序sum.java,計算本組成員的考試總分?jǐn)?shù)。小組有6名成員。本次考試成績分別為94.5,89.0,79.5,64.5,81.5,73.5,當(dāng)程序運行時,在控制臺輸出:“本組考試總分為482.5”,計算大于本次考試平均分學(xué)生,將學(xué)生的信息存入數(shù)組HighScore中。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析從技術(shù)角度,需要定義6個變量分別存放6位成員的成績,還需要定義一個變量存放總分。此外,再定義一個變量來記錄平均分。然后先定義數(shù)組分別存放6位學(xué)員的成績,然后把6個變量相加得到的和賦給一個新的變量。再定義一個變量來記錄平均分(總成績/人數(shù))。待篩選完高于平均分的分?jǐn)?shù)之后再遍歷打印高于平均分的分?jǐn)?shù)信息。教師演示課件演示小組討論教師:講解演示學(xué)生:思考發(fā)言分組討論支撐知識數(shù)組的概念;數(shù)組的聲明以及創(chuàng)建;數(shù)組的初始化;數(shù)組使用、遍歷、排序等操作;main方法中的數(shù)組;用java.util.Arrays類操縱數(shù)組。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施打開Eclipse中,創(chuàng)建一個類;在類的main方法中定義一個含有6個元素的整形數(shù)組;給數(shù)組元素進(jìn)行賦值;通過循環(huán)完成數(shù)組元素相加求和;輸出總分,測試運行;計算平均分avgscore;通過getHighScore方法獲得高于平均分的分?jǐn)?shù)信息;最后通過visitAllArray方法打印高于平均分的分?jǐn)?shù)信息。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流數(shù)組的聲明以及創(chuàng)建,使用循環(huán)語句完成對數(shù)組的操作。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)簡單的冒泡排序,按關(guān)鍵字由小到大排列一組整數(shù),輸出排序前后的數(shù)組。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)給包含100個整型元素的數(shù)組隨機(jī)進(jìn)行賦值,并用二分查找法查找元素32和1032。-分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)二:天氣預(yù)報信息處理程序設(shè)計(字符串處理)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入字符串是最常見的,字符串常見功能怎樣實現(xiàn)?運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:定義、初始化字符串;字符串常見操作及方法;StringBuffer類的定義;StringBuffer類的常用方法。教學(xué)目的:掌握String基本用法和常見操作;會使用StringBuffer類的方法對字符串進(jìn)行操作。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介設(shè)計實現(xiàn)了一個天氣預(yù)報的數(shù)據(jù)處理的功能,能提供在線的信息編輯處理,比如插入刪除和修改,以及查找、替換等功能。對天氣預(yù)報數(shù)據(jù)處理要求為:(1)將每日的天氣用字符串?dāng)?shù)組表示;(2)將每日的天氣用轉(zhuǎn)為可編輯字符串?dāng)?shù)組表示;(3)將每日的天氣每個空格處替換為",",在日期前加序號格式為1、2、等;(4)獲得5日夜間的溫度。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析從技術(shù)角度,字符串String提供了很多方法可以求長度、查找、替換、去掉首尾空格等。StringBuffer提供了追加和刪除、插入操作。解決問題步驟:先定義一個變量存放字符串,然后使用字符串的相關(guān)方法實現(xiàn)。在定義一個StringBuffer類型的變量來編輯處理天氣信息字符串。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識字符串的概念;創(chuàng)建String字符串;String類的常用操作及方法;StringBuffer對象的創(chuàng)建;StringBuffer類的常用方法。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施打開Eclipse,創(chuàng)建一個類;聲明String類對象WeatherForcast;利用String類的求長度、查找子字符串,并將天氣預(yù)報的內(nèi)容按天分為兩個String對象;用數(shù)組表示兩個String對象;利用String類實現(xiàn)查找替換獲取長度等操作;利用StringBuffer實現(xiàn)追加和刪除等操作;創(chuàng)建測試類,運行程序。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流String和StringBuffer的使用。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)使用StringBuffer類的常用方法進(jìn)行文本串編輯。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)輸入5種水果的英文名稱(葡萄grape,橘子orange,香蕉banana,蘋果apple,桃peach),編寫一個程序,按字典里出現(xiàn)的先后順序輸出。-分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)三:除法計算器程序設(shè)計(捕獲并處理異常)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入程序在運行的時候,會因為人為的原因造成程序上的錯誤,但是如果沒有人為原因,程序是正確的。怎樣通過程序?qū)φJ(rèn)為原因進(jìn)行處理,使程序繼續(xù)執(zhí)行下去?教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:什么是異常;如何進(jìn)行異常處理;異常處理的關(guān)鍵字;異常處理結(jié)構(gòu)。教學(xué)目的:掌握J(rèn)ava的異常處理機(jī)制;運用try、catch、finally處理異常。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介編寫一個除法計算器,程序要求在出現(xiàn)除數(shù)為零和除數(shù)、被除數(shù)中有一個不是數(shù)字的情況時進(jìn)行相應(yīng)的處理。當(dāng)調(diào)用存放在數(shù)組中的計算結(jié)果,數(shù)組有可能產(chǎn)生索引越界,對這種情況進(jìn)行捕捉和處理。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析輸入的兩個數(shù)以及兩個數(shù)相除。但在程序運行時,會產(chǎn)生很多意想不到的輸入問題,如輸入數(shù)中出現(xiàn)了字母、特殊符號等,程序無法正確運行下去。本任務(wù)采用異常捕獲和處理技術(shù)保證程序的健壯性。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識異常概念;異常處理機(jī)制;異常的分類;標(biāo)準(zhǔn)異常類;異常的捕獲與處理。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施打開Eclipse,創(chuàng)建一個類在類main方法中輸入兩個數(shù)相除給輸入的兩個數(shù)以及兩個數(shù)相除會產(chǎn)生異常,對這段代碼進(jìn)行異常處理編寫測試類,運行程序動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流異常處理程序編寫步驟。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)編寫程序,能夠產(chǎn)生、捕獲和處理NullPointerException異常和ClassCastException異常;編寫程序,能夠產(chǎn)生、捕獲和處理ArithmeticException異常和IndexOutOfBoundsException異常。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)給類屬性身份證號碼id設(shè)值,當(dāng)給定值長度為18時,賦值給id,當(dāng)值長度不為18時,拋出IllegalArgumentException異常,然后捕獲和處理異常。-分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)四:最大公約數(shù)計算器設(shè)計(異常的拋出)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入如果程序沒有語法錯誤,不會自動拋出異常,但不符合邏輯含義,怎樣才能拋出異常?教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:拋出異常;聲明異常;自定義異常。教學(xué)目標(biāo):運用throw拋出異常;運用throws聲明異常;能夠自定義異常。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介在數(shù)學(xué)計算或數(shù)字分析中,經(jīng)常會用到計算兩個數(shù)的最大公約數(shù)的問題。即:輸入兩個正整數(shù),當(dāng)兩個數(shù)字有一個不是正整數(shù)時會產(chǎn)生異常。當(dāng)輸入非整數(shù)數(shù)字時,也產(chǎn)生異常。輸入無錯誤后,計算兩個數(shù)的最大公約數(shù)。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析分別輸入兩個整數(shù)可以用java.util.Scanner的nextInt()方法。但在程序運行時,會產(chǎn)生很多意想不到的輸入問題,如輸入的數(shù)字帶小數(shù)或非數(shù)字時、特殊符號等,還有的情況是求公約數(shù)的數(shù)字為負(fù)數(shù),程序的運行就不正確了,嚴(yán)重時程序發(fā)生中斷,無法正確運行下去。要保證程序的健壯性,可以采用異常捕獲和處理技術(shù)。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識聲明異常;主動拋出異常;自定義異常。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施打開Eclipse,創(chuàng)建一個類;在類中定義一個方法,完成最大公約數(shù)的計算,聲明該方法會拋出什么異常,同時在該方法內(nèi)人為拋出一個異常對象;在類的main方法中調(diào)用定義的方法,并且捕獲方法拋出的異常,進(jìn)行處理;運行程序。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流拋出異常、聲明異常的應(yīng)用。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)輸入一個身份證號,驗證該身份證號是否正確。在系統(tǒng)中,輸入身份證號碼,當(dāng)身份證號碼位數(shù)不等于18位時,產(chǎn)生異常,當(dāng)身份證號碼中輸入非數(shù)字時,也產(chǎn)生異常。請編寫程序?qū)崿F(xiàn)此功能。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)輸入一個正整數(shù),求該數(shù)的階乘。要求能捕捉輸入數(shù)字格式異常(NumberFormatException),即當(dāng)輸入字符不是正整數(shù)時,出現(xiàn)提示信息“輸入數(shù)據(jù)格式不對,請重新輸入一個正整數(shù)。”-分組學(xué)習(xí)提交作業(yè)《Java程序設(shè)計》課程教學(xué)單元設(shè)計單元4圖形用戶界面程序設(shè)計授課教師:Java語言課程組授課班級:單元總學(xué)時:12教學(xué)條件軟件開發(fā)平臺、投影設(shè)備、廣播軟件教學(xué)素材參考教材、課件、授課錄像教學(xué)目標(biāo)設(shè)計知識目標(biāo):掌握使用布局管理器進(jìn)的概念和類型;理解AWT的概念和主要方法;掌握按鈕事件處理步驟和接口中的方法;掌握常用Swing組件的分類和創(chuàng)建過程;掌握菜單及對話框創(chuàng)建和事件響應(yīng)方法。能力目標(biāo):運用布局管理器進(jìn)行頁面開發(fā)方法;運用AWT圖形設(shè)計思想解決實際問題;能會處理按鈕的ActionEvent動作事件;應(yīng)用常用的Swing組件設(shè)計圖形界面;能會使用菜單及對話框進(jìn)行程序設(shè)計。重點:布局管理器的幾種形式實現(xiàn);Swing組件之間的信息傳遞;對話框的選擇。難點:Swing組件之間的信息傳遞;AWT圖形設(shè)計思想。教學(xué)內(nèi)容設(shè)計任務(wù)一:油耗計算程序設(shè)計;任務(wù)二:計算器界面設(shè)計;任務(wù)三:計算器事件處理;任務(wù)四:字體設(shè)置窗口程序設(shè)計;任務(wù)五:字體設(shè)置菜單設(shè)計。教學(xué)過程設(shè)計任務(wù)一:油耗計算程序設(shè)計(設(shè)計圖形用戶界面)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入節(jié)能減排,人們越來越關(guān)心汽車油耗,利用GUI基本組件制作一個簡單的油耗計算器程序。那么就需要Java提供一些類來創(chuàng)建這個界面組件。教師運行程序教師啟發(fā)討論教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:了解AWT抽象窗口工具包;使用Swing中的幾個簡單組件完成登陸功能。教學(xué)目的:認(rèn)識圖形用戶界面創(chuàng)建過程;會創(chuàng)建Swing組件并簡單使用相應(yīng)事件。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介用戶在指定的區(qū)域輸入加油錢數(shù),汽車跑的公里數(shù),和汽油的價格,單擊“計算”按鈕,計算顯示百公里油耗。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析可以定義一個窗口類,繼承自窗體類JFrame,并實現(xiàn)ActionListener接口。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識圖形圖像界面GUI;圖象窗口工具包AWT;輕量級工具包Swing;JFrame、JPanel、JButton和JPasswordField、JTextField組件。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施設(shè)計油耗計算器窗口;定義油耗計算器窗口類的構(gòu)造方法;定義actionPerformed單擊動作處理方法;定義main主方法,創(chuàng)建對象進(jìn)行測試。教師演示和動手實踐分組實踐教師:演示講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流組件的創(chuàng)建和事件處理個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)利用JavaSwing技術(shù)設(shè)計一個求解一元二次方程根的圖形圖像用戶界面應(yīng)用程序。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)編寫一個學(xué)生信息登記界面分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)二:計算器界面設(shè)計(使用布局管理器)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入上節(jié)課做的界面可以看到每個組件都有擺放的位置,擺放的形式多樣,(演示不同擺放形式)那么怎么樣讓這么多組件有一個較為美觀的布局形式,需要使用Java的布局管理器。教師運行程序教師啟發(fā)討論教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:布局管理器的概念;不同布局形式的創(chuàng)建和對比。教學(xué)目的:熟練使用流布局、邊界布局、網(wǎng)格布局和自定義布局改善用戶界面。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介設(shè)計計算器界面。編寫類似于Windows自帶的計算器程序??梢詫崿F(xiàn)加減乘除等基本數(shù)學(xué)運算。本次任務(wù)只完成界面的設(shè)計和顯示任務(wù),用戶操作響應(yīng)和計算功能在下次任務(wù)中完成。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析計算器界面整體布局采用BorderLayout。在上部安放一個JTextField對象,作為結(jié)果顯示區(qū)。中部和右部各安放一個JPanel對象,作為嵌套用的容器。中部keyPanel對象采用GridLayout,設(shè)置為5行3列,每個單元格可以顯示一個按鈕,用于顯示數(shù)字鍵盤、小數(shù)點等按鈕。右部operatorPanel對象采用GridLayout,設(shè)置為4行1列,顯示加、減、乘、除四個按鈕。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識布局管理器;流布局;網(wǎng)格布局;邊界布局;卡片布局;自定義布局和setBounds方法。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施建立Calculator類指定超類JFrame;設(shè)置窗口布局BorderLayout;在上部添加JTextField對象result;在中部添加keyPanel及其上面的按鈕;在右部添加operatorPanel及其上面的按鈕;書寫main方法測試。教師演示和動手實踐分組實踐教師:演示講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流各種布局管理的樣式和創(chuàng)建過程個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)利用JavaSwing技術(shù)設(shè)計一個能夠完成圖書信息錄入功能的GUI應(yīng)用程序動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)對上個任務(wù)中作業(yè)的學(xué)生基本信息登錄界面進(jìn)行重新布局分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)三:計算器事件處理(事件委托處理)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入在日常生活中按鈕或是單選按鈕的點擊都會引起一些事的發(fā)生,那么Java對事件的處理是什么樣子?使用任務(wù)二中的例子來演示按鈕的點擊事件教師運行程序教師啟發(fā)討論教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:委托事件處理機(jī)制;常用事件接口和方法。教學(xué)目的:掌握編寫事件處理程序的基本方法;熟練掌握對按鈕的ActionEvent動作事件處理。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介實現(xiàn)計算器計算功能。在上個任務(wù)的基礎(chǔ)上,添加用戶操作響應(yīng)代碼即事件處理代碼,完成計算器功能。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析修改Calculator類定義使其實現(xiàn)ActionListener接口,在actionPerformed方法中添加事件處理代碼,并且為每個按鈕添加this(代表當(dāng)前窗口對象)作為監(jiān)聽器。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識Java事件處理機(jī)制;事件監(jiān)聽類;編寫事件處理程序基本方法;ActionEvent動作事件和ActionListener監(jiān)聽接口。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施在任務(wù)二中Calculator類的代碼上,做如下修改:導(dǎo)入事件處理相關(guān)包java.awt.event.*;修改Calculator類使其實現(xiàn)接口ActionListener;增加actionPerformed方法,編寫按鈕點擊處理代碼,實現(xiàn)計算功能;為每一個按鈕對象添加當(dāng)前Calculator類對象(this)作為監(jiān)聽器。教師演示和動手實踐分組實踐教師:演示講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流事件處理機(jī)制和步驟個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)設(shè)計一個GUI程序,當(dāng)點擊按鈕時記錄單機(jī)按鈕和單擊的次數(shù)并顯示在窗口中。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)編寫一個關(guān)于按鈕的動作事件程序,創(chuàng)建兩個按鈕,對于“按鈕1”,單擊后將其變?yōu)椴豢梢姞顟B(tài),“按鈕2”變?yōu)榭梢姞顟B(tài)。分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)四:字體設(shè)置窗口程序設(shè)計(選擇控件和選擇事件)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入在信息化時代,網(wǎng)絡(luò)投票因?qū)嵤┵M用低、群眾參與度廣等優(yōu)點已經(jīng)成為評議的重要方式,有時一些網(wǎng)站也需要用填寫一部分資料,運用單選按鈕或組合框可以使選擇變得更方便。教師運行程序教師啟發(fā)討論教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:組合框JComBox、復(fù)選框JCheckBox、單選按鈕JRadioButton、按鈕組ButtonGroup和列表框Jlist。教學(xué)目的:熟練使用選擇控件構(gòu)造復(fù)雜用戶界面。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介設(shè)計一個簡單的實現(xiàn)字體設(shè)置窗口程序,可根據(jù)用戶選擇設(shè)置字體的種類、字號、字形、顏色等屬性。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析字體顏色單選項和字形復(fù)選框分別通過JRadioButton和JCheckBox類進(jìn)行創(chuàng)建并實現(xiàn),字號選擇通過JList類實現(xiàn),字體選擇通過JComboBox類實現(xiàn)。布局通過盒式布局嵌套實現(xiàn),兩個水平的盒子放在一個垂直的盒子里。上面水平的盒子里放JComboBox、JList、JCheckBox、JRadioButton對象,下面水平盒子里放文本區(qū)JTextArea對象和按鈕對象。同時實現(xiàn)ItemListener和ActionListener接口,處理按鈕點擊和選擇控件的事件。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識組合框JcomBox;復(fù)選框JcheckBox;單選按鈕JRadioButton;列表框Jlist;選擇事件。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施定義類FontSet繼承JFrame實現(xiàn)ItemListener,ActionListener接口;通過JComboBox、JList、JCheckBox、JradioButton等對象實現(xiàn)GUI界面設(shè)計;為組件添加監(jiān)聽器;為ItemListener和ActionListener接口添加事件處理代碼;編寫main方法測試程序。教師演示和動手實踐分組實踐教師:演示講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流選擇控件中的選擇事件的響應(yīng)和處理個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)設(shè)計一個簡單的測驗程序,可以進(jìn)行單選題、復(fù)選題、判斷題測驗。可以選擇幾套試題之一。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)設(shè)計一個簡單的網(wǎng)上購物程序,模擬網(wǎng)絡(luò)數(shù)碼產(chǎn)品購買;設(shè)計一個簡單學(xué)生信息登記界面程序。分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)五:字體設(shè)置菜單設(shè)計(菜單及其他控件)(4課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入每一個應(yīng)用程序包括網(wǎng)頁上都缺少不了菜單,他可以給用戶提供簡明清晰的信息。教師運行程序教師啟發(fā)討論教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:下拉菜單和彈出式菜單創(chuàng)建;鼠標(biāo)事件和鍵盤事件的創(chuàng)建;文字事件和窗口事件的創(chuàng)建。教學(xué)目的:掌握使用JMenuBar、JMenu和JMenuItem構(gòu)造應(yīng)用程序菜單;掌握使用JPopupMenu狗仔應(yīng)用程序彈出式菜單;了解鼠標(biāo)事件、鍵盤事件、文字事件和窗口事件。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介本次任務(wù)是設(shè)計一個帶有菜單的圖形用戶界面程序,使用級聯(lián)菜單控制文字的字體和顏色。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析建立一個有“字體”和“幫助”菜單的窗體,然后在“字體”的子菜單內(nèi)含有“樣式”、“顏色”和“退出”菜單項。幫助菜單要含有“關(guān)于”的菜單項,需要知道如何添加菜單和菜單項,如何響應(yīng)菜單項的點擊事件。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識下拉菜單的使用;彈出式菜單的使用;鼠標(biāo)事件處理(MouseEven);鍵盤事件處理(KeyEven);其他事件處理。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施定義一個MenuTest菜單類,繼承自窗體類JFrame,并實現(xiàn)ActionListener接口;定義MenuTest構(gòu)造方法,首先通過JMenuBar建立一個菜單欄,然后使用JMenu建立菜單,每個菜單再通過JMenuItem建立菜單項;定義actionPerformed單擊菜單項處理方法做相應(yīng)處理。教師演示和動手實踐分組實踐教師:演示講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流菜單的創(chuàng)建過程。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)設(shè)計一個帶有菜單的用戶界面,跟蹤鼠標(biāo)的移動,在文本區(qū)域?qū)崟r顯示鼠標(biāo)動作和坐標(biāo)位置。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)設(shè)計一個簡單的帶有菜單的學(xué)生信息管理系統(tǒng)主界面。分組學(xué)習(xí)提交作業(yè)《Java程序設(shè)計》課程教學(xué)單元設(shè)計單元5Java語言高級程序設(shè)計授課教師:Java語言課程組授課班級:單元總學(xué)時:22教學(xué)條件軟件開發(fā)平臺、投影設(shè)備、廣播軟件教學(xué)素材參考教材、課件、授課錄像教學(xué)目標(biāo)設(shè)計知識目標(biāo):掌握文件和目錄的概念以及對象的創(chuàng)建;掌握不同輸入輸出流的分類和對象的創(chuàng)建;理解線程和進(jìn)程的區(qū)分;掌握線程的概念、創(chuàng)建和運行機(jī)制;掌握線程的作用和實現(xiàn)步驟;掌握線程優(yōu)先級、互斥、解鎖的概念和解決方法;掌握Socket和ServerSocket類的作用和創(chuàng)建過程;掌握DatagramPacket類中的方法和對象的創(chuàng)建過程。掌握J(rèn)DBC訪問數(shù)據(jù)庫所用的類和方法。能力目標(biāo):能會使用Java語言對文件進(jìn)行處理;運用不同輸入輸出流對文件進(jìn)行操作;應(yīng)用線程概念掌握線程在CPU中的運行方式;能會使用線程完成多對一的客戶端程序編寫;能會使用優(yōu)先級和同步技術(shù)解決死鎖;運用TCP協(xié)議來編寫一個面向連接的網(wǎng)絡(luò)通信程序;應(yīng)用Socket類與ServerSocket類完成客戶端和服務(wù)器端程序設(shè)計;應(yīng)用DatagramPacket類完成應(yīng)用程序之間建立傳送數(shù)據(jù)報的通信連接;能會使用JDBC技術(shù)連接數(shù)據(jù)庫并對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行增刪查改的操作。重點:文件的創(chuàng)建和讀取過程;線程的創(chuàng)建和啟動;使用Socket接口完成網(wǎng)絡(luò)傳輸過程。使用JDBC讀寫數(shù)據(jù)庫難點:使用各種輸入輸出流來接收和讀取數(shù)據(jù);利用線程解決互斥和解鎖等問題;Socket接口中TCP和UDP傳輸形式。教學(xué)內(nèi)容設(shè)計任務(wù)一:文件管理程序設(shè)計;任務(wù)二:Java源程序行號添加程序設(shè)計;任務(wù)三:飄動字幕動畫程序設(shè)計;任務(wù)四:學(xué)生成績讀寫程序設(shè)計;任務(wù)五:網(wǎng)絡(luò)聊天程序設(shè)計;任務(wù)六:無連接網(wǎng)絡(luò)聊天程序設(shè)計;任務(wù)七:員工數(shù)據(jù)管理程序設(shè)計。教學(xué)過程設(shè)計任務(wù)一:文件管理程序設(shè)計(文件與目錄管理)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入只要運行在計算機(jī)上的軟件都需要讀寫硬盤上文件進(jìn)行處理,Java也提供了文件處理類和方法。教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:Java的文件和目錄概念;文件的創(chuàng)建;文件類的方法。教學(xué)目標(biāo):使用Java的文件類來管理硬盤和內(nèi)存中的文件。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介編寫文件管理程序,可通過文件選擇對話框選擇路徑,輸入文件名創(chuàng)建文件,或通過文件選擇對話框刪除選中的文件,或者查看選中文件的屬性。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析通過菜單實現(xiàn)功能選擇,通過JFileChooser實現(xiàn)文件選擇,通過File類實現(xiàn)文件的創(chuàng)建、刪除和查看。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識輸入/輸出流與java.io包;File類;JFileChooser類。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施定義類FileManager繼承JFrame實現(xiàn)ActionListener接口;在FileManager類的構(gòu)造方法中定義菜單;在actionPerformed方法中實現(xiàn)文件創(chuàng)建、刪除和查看功能;main方法中創(chuàng)建FileManager類對象。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流文件創(chuàng)建方式和目錄建立過程。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)編寫一個程序,用于顯示當(dāng)前目錄下的文件和目錄信息,類似于Dos中的dir命令。在c:\test文件夾下創(chuàng)建一個文件example.txt,然后列出該文件的絕對路徑、上一級目錄以及該文件的最后修改時間和文件大小。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)創(chuàng)建目錄:c:\123并創(chuàng)建一個文件a.txt,向該文件中3次寫入字符串“Howareyou!”。-分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)二:Java源程序行號添加程序設(shè)計(文件的訪問)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入當(dāng)文件創(chuàng)建在計算機(jī)的硬盤中,那么下一步將是對文件的訪問。教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:FileReader和FileWriter文件;流的操作過程。教學(xué)目標(biāo):掌握文件的順序訪問方式。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介編寫一個程序?qū)⒃次募泶鏋槠渌奈募槊恳恍写a在前面添加行號。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析使用BufferedReader從文件中逐行讀入Java源文件中的代碼,在每行代碼前加上行號后,使用PrintWriter逐行將代碼寫入新文件。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識輸入輸出流操作一般步驟;InputStream和OutputStream;FileInputStream和FileOutputStream類;DataInputStream和DataOutPutStream類;BufferedInputStream和BufferedOutPutStream類;Reader和Writer類。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施定義類InsertLineNumber編寫open方法,將源代碼文件內(nèi)容讀入字符串strFinal對象中編寫saveAs方法,從strFinal對象中逐行讀出代碼,增加行號并寫入新文件中在main方法中創(chuàng)建InsertLineNumber類對象,調(diào)用open、saveAs方法動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流文件流的分類和使用。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)編寫一個程序,將幾個Java類型的數(shù)據(jù)寫到一個文件中,并讀出來。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)編寫一個程序讀取他自己的源代碼并在控制臺中輸出。-分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)三:飄動字幕動畫程序設(shè)計(創(chuàng)建和啟動線程)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入在很多情況下設(shè)計中要求我們的程序能夠每隔一段時間就運行一次,需要Java引入線程的概念。教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:線程的Thread類;時間的Calendar和SimpleDateFormat類。教學(xué)目標(biāo):會使用Thread類創(chuàng)建一個多線程應(yīng)用程序。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介運用Java多線程技術(shù)編寫一個簡單的動畫,運行程序時窗口會顯示一個飄動的字幕,每隔1秒字幕會自動改變顯示的位置,先自左向右移動,到達(dá)窗口右邊界時,再改變?yōu)樽杂蚁蜃笠苿印S懻摎w納課件演示教師:講授學(xué)生:思考任務(wù)分析在窗口中,通過JLabel顯示一行文字,通過啟動一個線程,在線程中每隔一秒改變一次JLabel對象的位置可實現(xiàn)字幕飄動的動畫效果。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識線程概念;用Thread類創(chuàng)建線程;用Runnable接口創(chuàng)建線程。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施創(chuàng)建一個主類MovingText繼承JFrame實現(xiàn)Runnable接口在主類MovingText構(gòu)造方法中創(chuàng)建顯示JLabel對象,創(chuàng)建線程對象并啟動線程實現(xiàn)Runnable接口的run方法,使用sleep方法休眠一秒,然后修改JLabel對象位置在main方法中實例化MovingText動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流如何使用Thread類來創(chuàng)建和開啟一個線程。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)運用Java多線程技術(shù),通過實現(xiàn)Runnable接口來編寫一個電子時鐘的應(yīng)用程序,運行時每隔一秒種自動刷新顯示當(dāng)前日期和當(dāng)前時間。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)編寫一個程序,用繼承Thread類的方法,由main()主線程創(chuàng)建兩個新線程,每一個線程輸出從1-20后結(jié)束退出,每輸出一個數(shù)后注意要休眠1秒。分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)四:學(xué)生成績讀寫程序設(shè)計(線程生命周期與優(yōu)先級)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入線程創(chuàng)建后,每隔一段時間就進(jìn)入運行狀態(tài),多線程完成任務(wù)時將會存在幾個線程在不同的生命周期里反復(fù)切換的問題,也就會存在同一時刻會有多個線程搶占資源問題,那么就需要對線程優(yōu)先順序進(jìn)行定義。教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:線程的狀態(tài);線程的優(yōu)先級;線程的通信。教學(xué)目標(biāo):掌握線程的5種狀態(tài),并能控制線程狀態(tài);掌握線程調(diào)度優(yōu)先級,能夠解決多線程之間數(shù)據(jù)同步問題。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介程序中有兩個線程,一個負(fù)責(zé)寫學(xué)生成績數(shù)據(jù),一個負(fù)責(zé)讀取和顯示學(xué)生成績數(shù)據(jù)。為了清楚,一個學(xué)生有20門課的成績,寫線程寫入的每門課的成績都和其學(xué)號相同。如果讀線程發(fā)現(xiàn)成績和學(xué)號不一致的情況,則說明出現(xiàn)了共享數(shù)據(jù)讀寫不一致的問題,利用線程同步機(jī)制解決共享數(shù)據(jù)讀寫不一致的問題。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析同步塊和同步方法都可以解決共享數(shù)據(jù)保護(hù)的問題。如果代碼都是自己寫的,盡可能使用同步方法。如果調(diào)用別人寫好的、自己無法修改的非同步方法,就只能將調(diào)用語句放在同步塊中了。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識線程的5種狀態(tài);線程的優(yōu)先級;線程的同步。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施先定義StudentScore類,只提供數(shù)據(jù)定義,不提供訪問方法;分別定義WriteScore和ReadScore線程類,實現(xiàn)在同步塊中的成績寫和讀;main方法中創(chuàng)建并啟動兩個線程測試方案一的有效性;修改StudentScore類定義,通過增加兩個同步方法readScore和writeScore實現(xiàn)數(shù)據(jù)封裝;修改WriteScore和ReadScore線程類代碼,通過調(diào)用同步方法readScore和writeScore實現(xiàn)數(shù)據(jù)讀寫;運行程序測試方案二的有效性。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流線程的狀態(tài)轉(zhuǎn)換條件,解決同步和死鎖的問題。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)編寫一個倉庫的進(jìn)貨與銷售同步控制的線程實例。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)用Synchronized方法編寫一個“帶鎖定的售票線程”。分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)五:網(wǎng)絡(luò)聊天程序設(shè)計(套接字Socket)(4課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入互聯(lián)網(wǎng)的發(fā)展讓機(jī)器之間可以自由的互相連接,要想使計算機(jī)之間數(shù)據(jù)產(chǎn)出相互調(diào)用和處理,那么Java也必須提供一組類來完成網(wǎng)絡(luò)通信。教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:TCP/IP協(xié)議和端口的概念;Socket和ServerSocket類。教學(xué)目標(biāo):能使用Socket類與ServerSocket類創(chuàng)建客戶端程序,并實現(xiàn)客戶端程序與服務(wù)器端程序的信息交換。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介運用Java的套接字編寫一個多人網(wǎng)絡(luò)聊天程序??梢詫崿F(xiàn)聊天記錄的保存和查看。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析綜合運用流、線程和Socket實現(xiàn)網(wǎng)絡(luò)聊天程序,并實現(xiàn)聊天記錄的存儲。ChatServer是服務(wù)端程序,應(yīng)當(dāng)先于客戶端程序運行,可接受多個客戶端連接。ChatClient是客戶端程序,負(fù)責(zé)將用戶輸入文本發(fā)送到服務(wù)端并顯示從服務(wù)端轉(zhuǎn)發(fā)過來的其他客戶端發(fā)送的消息。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識TCP/IP和端口基本概念;Socket編程。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施定義Client類實現(xiàn)Runnable接口,作為客戶端代理,實際上是在服務(wù)器為每個客戶端創(chuàng)建一個單獨的通信線程;定義ChatServer類,等待客戶的連接請求,用列表clients保存客戶端代理,每次和一個客戶端建立連接,創(chuàng)建一個代理對象放入列表clients中;定義ChatClient類繼承JFrame,實現(xiàn)客戶端界面,與服務(wù)器建立連接,接收用戶輸入發(fā)送給服務(wù)器并顯示服務(wù)器發(fā)送來的信息。動手實踐分組實踐教師:講解指導(dǎo)學(xué)生:小組討論動手實踐分享交流Socket編程中服務(wù)器端和客戶端的連接過程。個別演示分組討論教師:總結(jié)學(xué)生:演示分享交流課堂實訓(xùn)用Socket實現(xiàn)客戶和服務(wù)器交互的典型C/S結(jié)構(gòu)的聊天程序。動手實踐分組實踐教師:任務(wù)布置學(xué)生:小組討論動手實踐課后作業(yè)編寫一個簡單的基于TCP協(xié)議的聊天程序,要求采用圖形用戶界面,允許服務(wù)器與客戶端在同臺機(jī)器上。分組學(xué)習(xí)提交作業(yè)教學(xué)過程設(shè)計任務(wù)六:無連接網(wǎng)絡(luò)聊天程序設(shè)計(無連接通信數(shù)據(jù)報編程)(2課時)主要步驟教學(xué)內(nèi)容教學(xué)方法教學(xué)手段師生活動引入任務(wù)五中我們使用了TCP協(xié)議來完成網(wǎng)絡(luò)通訊,但是在計算機(jī)網(wǎng)絡(luò)技術(shù)中還有一類連接時UDP,也就是無連接通信需要使用Java語言來解決。教師運行程序教師啟發(fā)-教師:演示學(xué)生:思考告知(教學(xué)內(nèi)容、教學(xué)目的)教學(xué)內(nèi)容:UDP協(xié)議的概念;數(shù)據(jù)報發(fā)送和接收。教學(xué)目標(biāo):能使用DatagramPacket類創(chuàng)建數(shù)據(jù)報對象并在應(yīng)用程序之間建立傳送數(shù)據(jù)報的通訊連接。教師啟發(fā)講解課件演示教師:講授學(xué)生:思考任務(wù)簡介編寫一款UDP協(xié)議實現(xiàn)聊天工具。運行兩個實例,設(shè)置對方IP地址和端口號即可實現(xiàn)網(wǎng)絡(luò)聊天。討論歸納課件演示教師:講授學(xué)生:思考任務(wù)分析可以創(chuàng)建一個類UdpDialogFrame,既可以作為信息發(fā)送端,又可以作為信息接收端。程序運行時,顯示本機(jī)IP地址和所用端口號。允許用戶輸入信息發(fā)送目標(biāo)的IP地址和端口號。在線程體中接收數(shù)據(jù)包,在TextListener接口的文本變化事件處理方法中發(fā)送數(shù)據(jù)包。教師演示課件演示小組討論教師:講解演示學(xué)生:思考參與發(fā)言分組討論支撐知識UDP數(shù)據(jù)報協(xié)議;InetAddress類;基于UDP通信的基本模式。討論歸納課件演示教師:演示學(xué)生:思考任務(wù)實施定義類UdpDialogFrame繼承Frame實現(xiàn)TextListener,Runnable接口;在UdpDialogFrame類的構(gòu)造方法中構(gòu)造窗口界面,啟動數(shù)據(jù)接收線程;在textValueChanged方法中發(fā)送信息;在run方法中接收并顯示信息;創(chuàng)建主類U

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論