版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第五章異?;仡櫪^承及其JAVA實(shí)現(xiàn)多態(tài)及其JAVA實(shí)現(xiàn)訪問修飾符對(duì)類成員的訪問限制方法修飾符:static、final、abstract2目標(biāo)理解異常的概念 運(yùn)用try塊、catch塊和finally塊處理異常運(yùn)用多重catch塊處理異常運(yùn)用嵌套try/catch塊處理異常運(yùn)用關(guān)鍵字throw和throws處理異常運(yùn)用JAVA編寫和使用自定義異常3………IFBISZEROGOTOERRORC=A/BPRINTCGOTOEXITERROR:
處理異常的塊“以零作除數(shù),代碼導(dǎo)致錯(cuò)誤”
DISPLAY
EXIT:END處理異常2-1處理運(yùn)行時(shí)錯(cuò)誤的偽代碼5手動(dòng)引發(fā)異常指定由方法引發(fā)的異常
tryfinallycatchthrowsthrow處理異常2-2要監(jiān)控的程序語(yǔ)句包含在此塊中以合理的方式捕獲和處理異常釋放資源等6Java異常類文件結(jié)束EOFException找不到文件I/O異常的根類IOException數(shù)字轉(zhuǎn)化格式異常,比如字符串到float型數(shù)字的轉(zhuǎn)換無(wú)效NumberFormatException不能加載所需的類ClassNotFoundException方法接收到非法參數(shù)IllegalArgumentException數(shù)組大小小于或大于實(shí)際的數(shù)組大小ArrayIndexOutOfBoundException嘗試訪問null對(duì)象成員NullPointerException許多java.lang異常的基類RuntimeException異常層次結(jié)構(gòu)的根類Exception算術(shù)錯(cuò)誤情形,如以零作除數(shù)ArithmeticException線程中斷InterruptedException說明異常7try和catch塊2-2演示:示例1try和catch塊的用法classExceptionRaised{/**構(gòu)造方法.*/publicExceptionRaised(){}/***這個(gè)方法運(yùn)行時(shí)將會(huì)產(chǎn)生一個(gè)異常.*@paramoperand1除法中的分子*@paramoperand2除法中的分母*@returnint返回除法的結(jié)果*/publicintcalculate(intoperand1,intoperand2){
intresult=operand1/operand2;returnresult;}}publicclassArithmeticException{/**構(gòu)造方法.*/publicArithmeticException(){}publicstaticvoidmain(String[]args){ExceptionRaisedobj=newExceptionRaised();try{/*定義變量result以存儲(chǔ)結(jié)果.*/intresult=obj.calculate(9,0);System.out.println(result);}catch(Exceptione){System.err.println(“發(fā)生異常:"+e.toString());e.printStackTrace();}}}9finally塊try塊finally塊catch塊無(wú)異常異常try、catch和finally塊的執(zhí)行流程10異常處理塊的一般形式try{ //要監(jiān)控錯(cuò)誤的代碼塊methodGeneratingException();}catch(Exceptione){ //Exceptione
的異常處理程序}finally{ //在try結(jié)束前要執(zhí)行的代碼塊cleanup();}11ExceptionArithmeticExceptionNullPointerExceptionObjectThrowableErrorThreadDeathSQLExceptionRuntimeExceptionNumberFormatException……異常類的層次結(jié)構(gòu)Throwable具有兩個(gè)子類,它們是Exception:處理用戶程序應(yīng)當(dāng)捕獲的異常情況Error:Error類的異常為內(nèi)部錯(cuò)誤,因此在正常情況下不期望用戶的程序捕獲它們AWTError13多重catch塊3-2使用多重catch語(yǔ)句時(shí),異常子類一定要位于異常父類之前
try{…...}catch(Exceptione){……}catch(ArrayIndexOutOfBoundsExceptione){……}
×14多重catch塊3-3演示:示例2多重catch的使用classExceptionCode{/**構(gòu)造方法.*/protectedExceptionCode(){}/**這個(gè)方法將將零作除數(shù).*/publicvoidcalculate(){try{intnum=0;intnum1=42/num;}catch(Exceptione){System.out.println("父類異常
catch子句");}catch(ArithmeticExceptionae){//錯(cuò)誤
–不能到達(dá)的代碼
System.out.println("這個(gè)子類的父類是"+"exception類,且不能到達(dá)");}}}classUnreachableCode{/**構(gòu)造方法.*/protectedUnreachableCode(){}/***類和應(yīng)用程序的唯一進(jìn)入點(diǎn).*@paramargs字符串參數(shù)的數(shù)組*/publicstaticvoidmain(String[]args){ExceptionCodeobj=newExceptionCode();obj.calculate();}}15使用throw和throws2-1語(yǔ)句3throw異常引發(fā)的異常!停止異常處理程序可執(zhí)行程序語(yǔ)句語(yǔ)句1語(yǔ)句217使用throw和throws2-2處理異常被調(diào)用的方法調(diào)用方法處理異??赡軙?huì)導(dǎo)致異常防止被調(diào)用的方法出現(xiàn)異常并處理異常typecalledmethod-name(parameter-list)throwsexception-list{//bodyofmethod}typecallingmethod-name{try{//statements calledmethod-name();}catch(Exceptione){//statements}}18用戶自定義異常2-1自定義異常概念使用自定義異常的時(shí)候JavaAPI提供的內(nèi)置異常不一定總能捕獲程序中發(fā)生的所有錯(cuò)誤。有時(shí)會(huì)需要?jiǎng)?chuàng)建用戶自定義異常自定義異常需要繼承Exception及其子類19總結(jié)異常是運(yùn)行時(shí)發(fā)生的錯(cuò)誤可以使用try、catch、throw、thro
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 3-1-Carboxyvinyloxy-benzoic-acid-生命科學(xué)試劑-MCE-7834
- 二零二五年度船舶入股船舶船員培訓(xùn)合作協(xié)議
- 2025年度時(shí)尚產(chǎn)品銷售總額提成與時(shí)尚趨勢(shì)合作合同
- 2025年度離職員工保密協(xié)議及競(jìng)業(yè)禁止條款合同
- 二零二五年度班組承包市場(chǎng)營(yíng)銷合作協(xié)議
- 2025年度酒店客房裝修風(fēng)格設(shè)計(jì)與施工合同
- 施工現(xiàn)場(chǎng)施工防生物毒素泄漏制度
- 施工日志填寫中的常見錯(cuò)誤及避免方法
- 現(xiàn)代科技下的學(xué)生心理發(fā)展研究
- 學(xué)校如何實(shí)施綠色化教學(xué)與管理
- 《宮頸癌篩查》課件
- 2024年聯(lián)勤保障部隊(duì)第九四〇醫(yī)院社會(huì)招聘考試真題
- 第二章《有理數(shù)的運(yùn)算》單元備課教學(xué)實(shí)錄2024-2025學(xué)年人教版數(shù)學(xué)七年級(jí)上冊(cè)
- DB31-T 596-2021 城市軌道交通合理通風(fēng)技術(shù)管理要求
- 華為智慧園區(qū)解決方案介紹
- 2022年江西省公務(wù)員錄用考試《申論》真題(縣鄉(xiāng)卷)及答案解析
- 【招投標(biāo)管理探究的國(guó)內(nèi)外文獻(xiàn)綜述2600字】
- 一例蛇串瘡患者個(gè)案護(hù)理課件
- DB63-T 2269-2024 公路建設(shè)項(xiàng)目安全生產(chǎn)費(fèi)用清單計(jì)量規(guī)范
- 低壓電工理論考試題庫(kù)低壓電工考試題
- 國(guó)家電網(wǎng)培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論