




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第5章異常處理知識(shí)目標(biāo)理解異常的概念;掌握異常處理的方法;了解異常類;掌握自定義異常的方法;了解異常的使用原則。能力目標(biāo)學(xué)會(huì)使用常見(jiàn)異常類;能會(huì)利用異常處理機(jī)制解決程序中出現(xiàn)的問(wèn)題。本章教學(xué)目標(biāo)第5章異常處理4任務(wù)陳述123知識(shí)準(zhǔn)備任務(wù)實(shí)施任務(wù)拓展任務(wù)實(shí)訓(xùn)51任務(wù)陳述任務(wù)描述:在一個(gè)除法計(jì)算的程序中,用戶輸入的信息可能不符合要求,無(wú)法完成計(jì)算,實(shí)現(xiàn)給出合理的提示信息運(yùn)行結(jié)果:理想狀態(tài)2知識(shí)準(zhǔn)備5.1異常1異常概述異常:異常就是Java程序在運(yùn)行過(guò)程中出現(xiàn)的錯(cuò)誤。異常處理將會(huì)改變程序的控制流程,讓程序有機(jī)會(huì)對(duì)錯(cuò)誤作出處理。Java以類的形式對(duì)異常進(jìn)行描述,并封裝成對(duì)象。其實(shí)就是Java對(duì)不正常情況進(jìn)行描述后的對(duì)象體現(xiàn)。例如角標(biāo)越界異常,空指針異常2知識(shí)準(zhǔn)備2異常類異常分類編譯時(shí)異常運(yùn)行時(shí)異常嚴(yán)重錯(cuò)誤異常類圖例:出題程序中的異常ThrowableErrorException子類子類RuntimeException子類2知識(shí)準(zhǔn)備3異常類常用成員方法getMessage():獲取異常信息,返回字符串。toString():獲取異常類名和異常信息,返回字符串。printStackTrace():獲取異常類名和異常信息,以及異常出現(xiàn)在程序中的位置,并輸出到控制臺(tái)。返回值void。printStackTrace(PrintStream
s):常用該方法將異常內(nèi)容保存在日志文件中,以便查閱。2知識(shí)準(zhǔn)備5.2異常處理1try…catch處理方式try{可能出現(xiàn)異常的語(yǔ)句;}catch(異常類名異常變量名){
異常發(fā)生后的操作語(yǔ)句;}try…catch的其他格式try…catch(異常1|異常2|…):多個(gè)異常間必須是平級(jí)關(guān)系try…catch…catch:try…catch…finally例:輸入格式錯(cuò)誤信息的處理2知識(shí)準(zhǔn)備2異常拋出當(dāng)一個(gè)方法不想或不能處理異常,可以將異常拋出格式:throws異常類名寫(xiě)在方法聲明形參小括號(hào)的后面例:publicvoidshow(inta)throwsException{}異常拋出后,由調(diào)用該方法的程序處理該異常2知識(shí)準(zhǔn)備3throw語(yǔ)句在方法內(nèi)部出現(xiàn)某種情況,程序不能繼續(xù)運(yùn)行,需要人為拋出異常,進(jìn)行處理的時(shí)候,就用throw把異常對(duì)象拋出。
格式:throw異常對(duì)象;throws與throw的區(qū)別2知識(shí)準(zhǔn)備5.3自定義異常類擴(kuò)展Exception類定義自己的異常類,然后根據(jù)需要拋出自定義異常對(duì)象。自定義異常類的創(chuàng)建方法繼承自Exception:編譯時(shí)異常繼承自RuntimeException:運(yùn)行時(shí)異常例:
銀行收入支出案例異常注意事項(xiàng)子類重寫(xiě)父類方法要拋出與父類一致的異常,或者不拋出異常子類重寫(xiě)父類方法所拋出的異常不能超過(guò)父類的范疇如果父類被重寫(xiě)的方法沒(méi)有異常拋出,那么子類的方法絕對(duì)不可以拋出異常,如果子類方法內(nèi)有異常發(fā)生,那么子類只能try,不能throws我們到底該如何處理異常呢?3任務(wù)實(shí)施
實(shí)現(xiàn)思路通過(guò)Scanner接收用戶輸入把兩個(gè)接收整數(shù)的語(yǔ)句放入try部分,表示可能拋異常然后用兩個(gè)catch分別對(duì)兩種異常進(jìn)行處理,輸出相應(yīng)的錯(cuò)誤提示3任務(wù)實(shí)施
任務(wù)代碼try{ a=sc.nextInt(); b=sc.nextInt(); c=a/b; System.out.println(a+"/"+b+"="+c); }catch(InputMismatchExceptione1){ System.out.println("輸入的數(shù)據(jù)格式不對(duì),請(qǐng)重新運(yùn)行"); }catch(ArithmeticExceptione2){ System.out.println("除數(shù)不能為0,請(qǐng)重新運(yùn)行"); }4任務(wù)拓展
斷言斷言語(yǔ)句用于調(diào)試代碼階段。在調(diào)試代碼階段讓斷言語(yǔ)句發(fā)揮作用,這樣就可以發(fā)現(xiàn)一些致命的錯(cuò)誤,當(dāng)程序正式運(yùn)行時(shí)就可以關(guān)閉斷言語(yǔ)句,但仍把斷言語(yǔ)句保留在源代碼中,如果以后應(yīng)用程又需要調(diào)試,可以重新啟用斷言語(yǔ)句。使用關(guān)鍵字assert聲明一條斷言語(yǔ)句,斷言語(yǔ)句有以下兩種格式:assertbooleanExpression;assertbooleanExpression:messageException;案例:7-6開(kāi)啟斷言的方法:運(yùn)行時(shí)加參數(shù)-
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 服裝批發(fā)商直播帶貨與網(wǎng)紅營(yíng)銷考核試卷
- 刨花板行業(yè)綠色生產(chǎn)與可持續(xù)發(fā)展考核試卷
- 彈射玩具銷售季節(jié)性規(guī)律考核試卷
- 樂(lè)器配件精密加工技術(shù)考核試卷
- 動(dòng)物用藥品銷售與市場(chǎng)預(yù)測(cè)分析考核試卷
- 刺繡藝術(shù)在充電寶的個(gè)性化設(shè)計(jì)考核試卷
- 創(chuàng)業(yè)項(xiàng)目品牌定位與市場(chǎng)推廣考核試卷
- 勞務(wù)合同范本遷戶口
- 學(xué)校鏟車租賃合同范本
- 淘客推廣合同范本
- 2024年3月30日事業(yè)單位聯(lián)考C類《職業(yè)能力傾向測(cè)驗(yàn)》試題
- 淮陰師范學(xué)院《論文寫(xiě)作與文獻(xiàn)檢索》2023-2024學(xué)年第一學(xué)期期末試卷
- 《化工設(shè)備機(jī)械基礎(chǔ)(第8版)》完整全套教學(xué)課件
- 代理記賬業(yè)務(wù)內(nèi)部規(guī)范制度-代理記賬業(yè)務(wù)規(guī)范
- 山東虛擬電廠商業(yè)模式介紹
- 2024-2025學(xué)年高中思想政治選擇性必修2 法律與生活統(tǒng)編版(部編版)教學(xué)設(shè)計(jì)合集
- 第09講二元一次方程組中的新定義題型(原卷版+解析)-2021-2022學(xué)年下學(xué)期七年級(jí)數(shù)學(xué)下冊(cè)期末復(fù)習(xí)高頻考點(diǎn)專題(人教版)
- 全國(guó)職業(yè)院校技能大賽高職組(商務(wù)數(shù)據(jù)分析賽項(xiàng))備賽試題庫(kù)(含答案)
- 八年級(jí)道德與法治下冊(cè) 第三單元 人民當(dāng)家作主教案 新人教版
- JGJ153-2016 體育場(chǎng)館照明設(shè)計(jì)及檢測(cè)標(biāo)準(zhǔn)
- 【年產(chǎn)100噸植物乳桿菌菌劑生產(chǎn)線設(shè)計(jì)10000字(論文)】
評(píng)論
0/150
提交評(píng)論