




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、1第六章第六章 異常處理(異常處理(Exceptions) Exceptions的概念的概念異常異常處理處理自定義自定義異常異常2public class testpublic static void main(String args )int i=0;String greetings = Hello World!,Hello!, HELLO WORLD!;while ( i4)System.out.println(greetingsi);i+; Hello World!Hello!HELLO WORLD!Java.lang.ArrayIndexOutOfBoundsExceptionat H
2、elloWorld.main(HelloWorld.java:7)3Exception 的概念的概念 Exception 是在程序運行時打斷正常程序流程的是在程序運行時打斷正常程序流程的異常的情況異常的情況試圖打開的文件不存在試圖打開的文件不存在網(wǎng)絡鏈接中斷網(wǎng)絡鏈接中斷操作符越界操作符越界要加載類文件不存在要加載類文件不存在Java中定義了各種中定義了各種異常異常 Error 很難恢復的嚴重錯誤,一般不由程序處理。很難恢復的嚴重錯誤,一般不由程序處理。4Java中定義了各種中定義了各種異常異常。Java.lang.Throwable是這些類的父類。是這些類的父類。Java中定義的異常中定義的異
3、常5異常類ObjectThrowableErrorExceptionAWTExceptionIOExceptionRuntimeExceptionJava中中哪些異常需要是強制捕獲的?哪些異常需要是強制捕獲的?非RuntimeException異常類或者其子類的的異常都要聲明捕捉。 6異常處理zJava程序在執(zhí)行過程中如出現(xiàn)異常,會自動生成一個異常類對象,該異常對象將被提交給Java運行時系統(tǒng),這個過程稱為拋出(throw)異常。z當Java運行時系統(tǒng)接收到異常對象時,會尋找能處理這一異常的代碼并把當前異常對象交給其處理,這一過程稱為捕獲(catch)異常。z如果Java運行時系統(tǒng)找不到可以捕
4、獲異常的方法,則運行時系統(tǒng)將終止,相應的Java程序也將退出。ztry/catch/finally語句。7異常處理異常處理撲獲并處理異常撲獲并處理異常將方法中產(chǎn)生的異常拋出將方法中產(chǎn)生的異常拋出8撲獲與處理異常撲獲與處理異常Try 語句塊語句塊 catch 語句塊語句塊 finally 語句塊語句塊9TryTry語句塊語句塊一般形式:一般形式:try Java statements /一條或多條可能產(chǎn)生例外的一條或多條可能產(chǎn)生例外的java語句。語句。 try 語句后必須跟隨至少一個語句后必須跟隨至少一個catch或或finally語句塊。語句塊。10CatchCatch語句塊語句塊 Catc
5、h語句塊提供錯誤處理。語句塊提供錯誤處理。一般格式:一般格式:catch (SomeThrowableObject variableName) Java statements SomeThrowableObject:能夠被處理的異常類名,必須是:能夠被處理的異常類名,必須是throwable類的子類類的子類 variableName: 是異常處理程序中能夠引用的代表被撲獲異常是異常處理程序中能夠引用的代表被撲獲異常的變量名稱。的變量名稱。 Java statements: 當撲獲到異常時執(zhí)行的當撲獲到異常時執(zhí)行的java語句。語句。11FinallyFinally語句塊語句塊將先前方法的狀態(tài)清
6、除,并可以將控制轉將先前方法的狀態(tài)清除,并可以將控制轉移到程序的其他地方。移到程序的其他地方。finally 語句塊無論是否發(fā)生異常都要執(zhí)行語句塊無論是否發(fā)生異常都要執(zhí)行 除非程序使用除非程序使用System.exit(-1)方法異常方法異常退出退出12例外處理例外處理Try ,catch和和finally 語句語句1 Try2 / code that might throw a partcular exception3 catch(MyExceptionType e)4 / code to excute if a MyExceptionType exception is thrown5 ca
7、tch (Exception e)6 / code to execute if a general Exception exception is thrown7 finally 13撲獲與處理撲獲與處理異常異常示例示例public static void main(String args)int i = 0 ;String greetings=Hello World!,Hello!,HELLO!;while (i10。22自定義異常23import java.util.Scanner; class myException extends Exception myException() supe
8、r(出現(xiàn)異常出現(xiàn)異常:輸入數(shù)超出范圍輸入數(shù)超出范圍); public class test public static void main(String args) Scanner sc = new Scanner(System.in ); int sum=0;System.out.print(請輸入要計算的階乘數(shù):); int n=sc.nextInt();try sum=jiecheng(n); catch(myException e) System.out.println(e); System.exit(0); System.out.print(結果是:+sum);static int jiecheng(int n) throws myException int m=1; if(n10) throw new myException(); for(int i=1;i Run Configurations - Arguments頁簽 - VM arguments文本框中加上斷言開啟的標志:-enableassertions 或者-ea 就可以了zpublic class Assert
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 泵與風機的性能(泵與風機課件)
- 流體動力學-流體運動的研究方法(流體力學)
- 2025年北京市房山區(qū)九年級初三一模英語試卷(含答案)
- 禁毒知識課件
- 知識課件下載安裝
- 護理項目管理課件
- 人教版《道德與法治》七年級下冊教案
- 物業(yè)基礎知識概論培訓
- 七年級生物下冊 4.13.4 當代主要疾病和預防教學設計 北師大版
- 跨職能部門流程圖完全指南
- 光伏發(fā)電工程施工組織設計新編樣本
- 山東省濟南市2022年中考英語情景運用拔高練習(Word版含答案)
- 第九章證據(jù)規(guī)則
- 妊娠滋養(yǎng)細胞疾病的護理課件
- JJF 1847-2020 電子天平校準規(guī)范(高清版)
- 《XX醫(yī)院安寧療護建設實施方案》
- 污水處理站運行維護管理方案
- 起重機械產(chǎn)品質(zhì)量證明書與合格證樣表剖析
- 《機電傳動控制》模塊化實驗裝置設計
- 北師大版小學數(shù)學五年級上冊單元練習題全冊
- 職業(yè)病危害接觸史證明
評論
0/150
提交評論