版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
異常處理第8章2目標(biāo)異常的基本概念異常的處理異常類的層次結(jié)構(gòu)
創(chuàng)建自己的異常
38.1.1異常基本概念運(yùn)行時(shí)發(fā)生的錯(cuò)誤稱為異常。處理這些異常就稱為異常處理。發(fā)生異常后此前分配的所有資源都將保留在相同的狀態(tài),這將導(dǎo)致資源漏洞。PublicclassExceptionDemo1{publicstaticvoidmain(Stringargs[]){inta=0;System.out.println(8/a);}}48.1.2異常處理機(jī)制異常處理機(jī)制執(zhí)行過程:出現(xiàn)異常事件時(shí),Java系統(tǒng)自動(dòng)產(chǎn)生一個(gè)異常對(duì)象,然后將這個(gè)對(duì)象傳遞給Java運(yùn)行時(shí)系統(tǒng),這個(gè)例外產(chǎn)生和提交的過程稱為拋棄例外(throw);當(dāng)Java運(yùn)行時(shí)系統(tǒng)得到例外對(duì)象以后,它將會(huì)尋找處理這一例外的代碼,找到能處理這一例外的方法以后,運(yùn)行時(shí)系統(tǒng)把當(dāng)前例外對(duì)象交給這個(gè)方法進(jìn)行處理,這一過程稱為捕獲(catch)。58.2Throwable類7.2.1異常類的層次和主要子類Java異常指的是一個(gè)繼承Throwable類的實(shí)例,它有兩個(gè)子類:Exception和Error。它們均被放在java.lang包中。7.2.2異常類的方法和屬性祥見p130。68.3異常處理(1)由系統(tǒng)自動(dòng)處理。(2)使用try~catch~finally語句。(3)使用throw語句直接拋出異?;蚴褂胻hrows語句間接拋出異常。78.3.1try~catch~finally語句語法結(jié)構(gòu):
try { 可能產(chǎn)生異常的代碼段; }
catch(異常類名1對(duì)象名1) { 處理語句組1; }
catch(異常類名2對(duì)象名2) { 處理語句組2; } ……
finally {
最終處理語句;
}88.3.2throw語句和throws子句(1)throw語句用來明確地拋出一個(gè)異常,
throw異常;然后在包含它的所有try塊中從內(nèi)向外尋找與其匹配的catch語句塊。(2)throws語句如果一個(gè)方法可能導(dǎo)致異常但不處理它,此時(shí)可在方法聲明中包含throws
子句,發(fā)生了異常,由調(diào)用者處理。throws列舉方法可能引發(fā)的所有異常。這對(duì)于除Error或RuntimeException及它們子類以外類型的所有異常是必要的。<方法名>(<參數(shù)行>)[throws<異常類1>,<異常類2>…]{if(異常條件1成立)
throwsnew異常類1();
if(異常條件2成立)
throwsnew異常類2();
…}98.3.3創(chuàng)建自己的異常內(nèi)置異常不可能始終足以捕獲所有錯(cuò)誤,因此需要用戶自定義的異常類用戶自定義的異常類應(yīng)為
Exception類(或者Exception類的子類)的子類創(chuàng)建的任何用戶自定義的異常類都可以獲得
Throwable類定義的方法classArraySizeExceptionextendsNegativeArraySizeException{ArraySizeException(){super(“您傳遞的是非法的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物(四川)-【八省聯(lián)考】河南、山西、陜西、內(nèi)蒙古、四川、云南、寧夏、青海八省2025年高考綜合改革適應(yīng)性演練聯(lián)考試題和答案
- 小學(xué)一年級(jí)20以內(nèi)口算練習(xí)題
- 小學(xué)數(shù)學(xué)一年級(jí)以內(nèi)加減法口算
- 湖南省株洲市2025屆高三上學(xué)期教學(xué)質(zhì)量統(tǒng)一檢測(cè)語文答案
- 幼兒園年度伙委會(huì)會(huì)議
- 高考新課標(biāo)語文模擬試卷系列之70
- 《組織結(jié)構(gòu)設(shè)計(jì)報(bào)告》課件
- 污水處理行業(yè)客服工作思考
- 公務(wù)員工作總結(jié)服務(wù)群眾恪盡務(wù)
- 包包設(shè)計(jì)師設(shè)計(jì)款式新穎的時(shí)尚包包
- 寶寶大便觀察及護(hù)理課件
- 學(xué)校最小應(yīng)急單元應(yīng)急預(yù)案
- 一年級(jí)第一學(xué)期口算題(20以內(nèi)口算天天練-15份各100題精確排版)
- 公司月度安全生產(chǎn)綜合檢查表
- 重慶市康德卷2023-2024學(xué)年物理高二上期末綜合測(cè)試試題含解析
- (銀川市直部門之間交流)2022事業(yè)單位工作人員調(diào)動(dòng)表
- 七年級(jí)音樂下冊(cè) 第4單元《北京喜訊到邊寨》課件1 花城版
- 飛行員獻(xiàn)身國防志愿書1000字
- 瓷磚采購?fù)稑?biāo)方案
- 世界國家地區(qū)區(qū)域劃分 Excel對(duì)照表 簡(jiǎn)
- 移動(dòng)互聯(lián)網(wǎng)的實(shí)訓(xùn)報(bào)告優(yōu)秀三篇
評(píng)論
0/150
提交評(píng)論