《HarmonyOS鴻蒙應(yīng)用開發(fā)》-項目3-03 多態(tài);項目3-04 特殊操作符_第1頁
《HarmonyOS鴻蒙應(yīng)用開發(fā)》-項目3-03 多態(tài);項目3-04 特殊操作符_第2頁
《HarmonyOS鴻蒙應(yīng)用開發(fā)》-項目3-03 多態(tài);項目3-04 特殊操作符_第3頁
《HarmonyOS鴻蒙應(yīng)用開發(fā)》-項目3-03 多態(tài);項目3-04 特殊操作符_第4頁
《HarmonyOS鴻蒙應(yīng)用開發(fā)》-項目3-03 多態(tài);項目3-04 特殊操作符_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

XX學院教案課程HarmonyOS鴻蒙應(yīng)用開發(fā)課次7課題多態(tài)班級授課地點實到人數(shù)授課時間備課時間課型□理論□實踐√理實一體教學目標知識目標:1.掌握抽象類的定義與使用規(guī)則。2.理解接口的聲明與實現(xiàn)方式。3.區(qū)分抽象類與接口的應(yīng)用場景。能力目標:1.能正確定義抽象類和抽象方法。2.能實現(xiàn)類的多重接口。3.能運用接口定義數(shù)據(jù)結(jié)構(gòu)。素質(zhì)目標:1.培養(yǎng)規(guī)范意識(遵循抽象方法約束)。2.理解模塊化設(shè)計思想。3.樹立接口即契約的編程觀念。教學重點1.abstract關(guān)鍵字的用法。2.接口的多重繼承特性。3.多態(tài)行為的實現(xiàn)方式。教學難點1.抽象類的層級設(shè)計。2.接口的擴展繼承。3.數(shù)據(jù)結(jié)構(gòu)接口的應(yīng)用。教學過程(主要教學內(nèi)容、教學方式方法、教學時間分配等)主要教學內(nèi)容教學方式、方法手段等(教師活動/學生活動)教學用時(分鐘)一、概念導(dǎo)入二、抽象類實戰(zhàn)三、接口基礎(chǔ)四、接口進階五、總結(jié)提升1.通過動物類族說明多態(tài)需求。(分析法)1.Animal/FourFeetAnimal抽象類解析。-抽象方法makeSound-具體方法move2.Dog/Cat類實現(xiàn)演示。-方法重寫對比-特有方法擴展。(案例演示法)1.Animal/Swimmable接口定義。2.Dog類多重接口實現(xiàn)。3.接口方法約束驗證。(代碼調(diào)試)1.Person/Contact基礎(chǔ)接口。2.Employee擴展接口。3.數(shù)據(jù)結(jié)構(gòu)初始化演示。(數(shù)據(jù)建模)1.抽象類vs接口對比表格。2.多態(tài)實現(xiàn)方案選擇指南。(思維導(dǎo)圖法)10'20'15'15'15’課程思政教學設(shè)計1.契約精神:通過接口實現(xiàn)強調(diào)編程規(guī)范。2.生態(tài)思維:用Animal類族說明生物多樣性。3.模塊化思想:借接口組合培養(yǎng)工程思維。教學手段教具極域課堂教學課后作業(yè)與思考題1.超星在線作業(yè)。2.基礎(chǔ)題:擴展FourFeetAnimal添加sleep抽象方法。3.提高題:設(shè)計Flyable接口并實現(xiàn)于Bird類。4.實踐題:用接口定義學生信息數(shù)據(jù)結(jié)構(gòu)??偨Y(jié)分析本堂課嚴格依托教材案例體系,采用“概念解析→分層實現(xiàn)→對比驗證”的教學路徑:通過Animal類族完整演示抽象類繼承鏈。結(jié)合Swimmable接口展示多重實現(xiàn)特性。使用Employee接口實踐數(shù)據(jù)結(jié)構(gòu)設(shè)計。重點突破抽象方法與接口方法的實現(xiàn)差異,有效培養(yǎng)了學生的面向?qū)ο笤O(shè)計能力。教學詳案(附頁)一、概念導(dǎo)入(10分鐘)1.情境創(chuàng)設(shè)(3分鐘)(1)展示動物世界視頻片段(狗奔跑/貓行走/鳥飛翔)。(2)提問引導(dǎo):“這些動物都有移動行為,但實現(xiàn)方式有何不同?”。板書思維導(dǎo)圖:多態(tài)概念├─同一方法(如move())├─不同實現(xiàn)(跑/走/飛)└─統(tǒng)一調(diào)用接口2.理論講解(5分鐘)結(jié)合教材“多態(tài)是面向?qū)ο缶幊痰暮诵母拍睢闭归_:類比舉例:USB接口(統(tǒng)一標準)與不同設(shè)備(鼠標/鍵盤)的實現(xiàn)。強調(diào)三個關(guān)鍵特征:(1)繼承關(guān)系。(2)方法重寫。(3)父類引用指向子類對象。3.案例演示(2分鐘)快速運行教材案例3-3的Animal類族代碼。重點觀察:letanimals:Animal[]=[newDog("旺財"),newCat("小花")];animals.forEach(animal=>animal.makeSound());//輸出不同叫聲二、抽象類實戰(zhàn)(20分鐘)【分層教學】1.基礎(chǔ)層(8分鐘)解析教材抽象類定義:abstractclassAnimal{protectedname:string;//重點講解protected作用域abstractmakeSound():void;//抽象方法分步演示move(){/*...*/}//對比具體方法}常見錯誤演示://錯誤1:嘗試實例化抽象類leta=newAnimal();//編譯報錯//錯誤2:子類未實現(xiàn)全部抽象方法classWhiteDogextendsFourFeetAnimal{}//缺少eat()實現(xiàn)2.進階層(7分鐘)擴展案例開發(fā):abstractclassFourFeetAnimalextendsAnimal{walk(){/*四條腿行走模板方法*/}abstracteat():void;//新增抽象要求}交互調(diào)試:故意刪除Dog類的eat()實現(xiàn),觀察IDE報錯3.實戰(zhàn)層(5分鐘)任務(wù)驅(qū)動://任務(wù):為FourFeetAnimal添加sleep抽象方法classDogextendsFourFeetAnimal{sleep(){console.log("趴著睡")}//實現(xiàn)差異點}classCatextendsFourFeetAnimal{sleep(){console.log("蜷著睡")}//多態(tài)體現(xiàn)}重點講評抽象方法約束力。三、接口基礎(chǔ)(15分鐘)【對比教學】1.概念辨析(7分鐘)與抽象類對比:抽象類接口實例化××方法實現(xiàn)可部分實現(xiàn)必須全部不實現(xiàn)繼承單繼承多實現(xiàn)abstract修飾方法√×2.基礎(chǔ)實現(xiàn)(8分鐘)分步實現(xiàn)教材案例:interfaceSwimmable{swim():void;//強調(diào)不需要abstract關(guān)鍵字}classDogimplementsAnimal,Swimmable{swim(){/*狗刨式實現(xiàn)*/}//必須實現(xiàn)所有接口方法}四、接口進階15分鐘)【項目實戰(zhàn)】數(shù)據(jù)結(jié)構(gòu)設(shè)計。interfaceEmployeeextendsPerson,Contact{employeeId:number;//擴展字段}模塊化拆分:├─Person.ets//基礎(chǔ)接口定義├─Contact.ets└─Employee.ets//組合接口泛型接口拓展:interfaceRepository<T>{get(id:number):T;save(entity:T):void;}五、總結(jié)提升(15分鐘)【思政維度】模塊化設(shè)計→社會分工協(xié)作。接口契約→誠信體系建設(shè)。多態(tài)思想→包容性發(fā)展理念?!具w移拓展】課后作業(yè)分層:基礎(chǔ):完成FourFeetAnimal的sleep()擴展。提高:設(shè)計Flyable+Swimmable的Amphibian類?!景鍟O(shè)計】多態(tài)實現(xiàn)雙路徑。抽象類接口代碼復(fù)用多繼承單繼承限制純契約統(tǒng)一調(diào)用【教學反思】預(yù)留5分鐘收集學生問題,重點記錄:接口默認方法的使用疑惑。抽象類構(gòu)造方法的特殊要求。XX學院教案課程HarmonyOS鴻蒙應(yīng)用開發(fā)課次8課題特殊操作符班級授課地點實到人數(shù)授課時間備課時間課型□理論□實踐√理實一體教學目標知識目標:1.掌握四種特殊操作符的語法格式。2.理解各操作符的應(yīng)用場景。3.區(qū)分空值合并與邏輯或的區(qū)別。能力目標:1.能正確使用可選鏈訪問嵌套屬性。2.能合理選擇空值處理操作符。3.能安全使用非空斷言操作符。素質(zhì)目標:1.培養(yǎng)防御性編程思維。2.強化代碼安全意識。3.樹立風險預(yù)防意識。教學重點1.可選操作符的安全訪問機制。2.空值合并操作符的判斷邏輯。3.非空斷言的風險控制。教學難點1.可選鏈的短路特性。2.空值賦值的條件判斷。3.斷言操作的潛在風險。教學過程(主要教學內(nèi)容、教學方式方法、教學時間分配等)主要教學內(nèi)容教學活動教學用時(分鐘)一、問題導(dǎo)入二、可選操作符三、控制處理四、斷言操作五、總結(jié)提升1.演示CourseInfo接口未初始化時的報錯。2.引出安全訪問的需求。1.CourseInfo案例分步解析:-未初始化course?.professor-已初始化但days為undefined2.對象鏈訪問的短路特性。1.空值合并操作符演示:-nullValue??"默認值"-emptyText??"默認值"2.空值賦值運算符:-b??=a的賦值條件-c??=d的生效場景。1.User接口的非空斷言:-user!.name的安全使用-user!.age!.toString()的風險2.運行時錯誤分析。1.操作符使用場景對照表。2.安全編程規(guī)范要點。10'20'20'20'10’課程思政教學設(shè)計1.風險意識:通過非空斷言強調(diào)安全底線。2.嚴謹作風:用空值合并培養(yǎng)細致習慣。3.預(yù)防思維:借可選鏈體現(xiàn)防患未然。教學手段教具極域課堂教學課后作業(yè)與思考題1.超星在線作業(yè)。2.基礎(chǔ)題:重構(gòu)CourseInfo添加學分查詢鏈。3.提高題:設(shè)計用戶權(quán)限的安全訪問方案??偨Y(jié)分析本堂課嚴格遵循教材案例體系,采用“問題驅(qū)動→逐項解析→風險警示”的教學路徑:通過CourseInfo完整演示可選鏈的安全訪問。使用nullValue/emptyText對比空值處理邏輯。結(jié)合User接口深入分析斷言操作的風險邊界。重點培養(yǎng)安全編程意識,通過控制臺錯誤直觀展示操作符的邊界條件。教學詳案(附頁)一、問題導(dǎo)入(10分鐘)1.錯誤場景演示(5分鐘)【教師操作】現(xiàn)場編寫代碼:interfaceCourseInfo{professor:string}letcourse:CourseInfo|undefined;console.log(fessor);//故意不初始化【學生觀察】編譯報錯“'course'ispossibly'undefined'.”【提問】“為什么會出現(xiàn)這個錯誤?如何避免?”(引導(dǎo)學生回憶undefined和null的潛在風險)2.需求引出(5分鐘)【對比展示】修改代碼:console.log(course?.professor);//輸出undefined而非報錯【概念強調(diào)】“可選操作符就像安全氣囊,當碰撞(空值)發(fā)生時保護程序不崩潰”?!景鍟坷L制對象鏈訪問示意圖:course→professor→length標注可能斷裂的環(huán)節(jié)。二、可選操作符(20分鐘)【案例1】未初始化訪問。letcourse:CourseInfo|undefined;console.log("教授姓名:",course?.professor);//輸出undefined重點:操作符在第一個環(huán)節(jié)就短路返回?!景咐?】部分初始化:course={professor:"張教授",days:undefined};console.log("天數(shù):",course?.days?.length);關(guān)鍵點:第一層course?.days返回undefined。第二層?.length阻止繼續(xù)訪問?!惧e誤對比】刪除操作符演示錯誤鏈式反應(yīng)?!窘Y(jié)論】可選操作符會阻斷方法調(diào)用鏈。三、控制處理(20分鐘)1.空值合并操作符(10分鐘)【對比實驗】constfalsyValue=0;constfalsyValue1='';console.log('',falsyValue||"默認值");//輸出"默認值"console.log('',falsyValue??"默認值");//輸出0console.log('',falsyValue1??"默認值");//輸出空字符串console.log('',falsyValue1||"默認值");//輸出“默認值”【規(guī)律總結(jié)】板書真值表。左值??結(jié)果||結(jié)果null右值右值""""右值2.空值賦值運算符(10分鐘)【場景模擬】用戶配置初始化:letuserConfig:Config|null=null;constdefaultConfig:Config={theme:"light"};userConfig??=defaultConfig;//生效賦值console.log('',JSON.stringify(userConfig))//輸出:{"theme":"light"}【陷阱警示】演示錯誤用法:letcount=0;count??=10;//不會賦值強調(diào):僅對null/undefined生效,區(qū)別JS。四、斷言操作(20分鐘)1.安全斷言演示(10分鐘)【正確案例】類型收窄后使用。interfaceUser{name:string|null}functionprintName(user?:User){if(user){//判斷安全console.log(user!.name);//此時可安全斷言}}【錯誤案例】強制斷言后果。interfaceUser{name:string|undefined}functionprintName(user?:User){console.log(user!.name!.toString())//運行時可能會崩潰}展示錯誤堆棧截圖(對應(yīng)教材圖

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論