freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java程序設計之網(wǎng)絡編程java標準類庫、java異常處理ppt-資料下載頁

2025-10-07 23:39本頁面
  

【正文】 異常NoClassDefFoundException aClass aa=new aClas()。 //但 aClass類未定義。 (9) 空指針異常 NullPointerException int b[ ]。 b[0]=99。 //沒有實例化,就訪問,將產(chǎn)生空指針。 異常類的類層次 常見的非運行時異常如下: (1) ClassNotFoundException :找不到類或接口所產(chǎn)生的異常 (2) CloneNotSupportedException:使用對象的 clone 方法但無法執(zhí)行 Cloneable 所產(chǎn)生的異常。 (3) IllegalAccessException :類定義不明確所產(chǎn)生的異常。例如:類不為 public ,或是包含一個類定義在另一個類庫內(nèi)。 (4) IOException :在一般情況下不能完成 I/O操作所產(chǎn)生的異常。 (5) EOFException: 打開文件沒有數(shù)據(jù)可以讀取所產(chǎn)生的異常 (6) FileNotFoundException :在文件系統(tǒng)中,找不到文件名稱或路徑所產(chǎn)生 (7) InterruptedIOException:目前線程等待執(zhí)行,另一線程中斷目前線程 I/O運行所產(chǎn)生的異常 在 Sun公司提供的各種 API包中,如 ,,都提供不同情況下可能產(chǎn)生的異常。由于異常的種類非常多,需要讀者實際運用中逐漸掌握。 Throwable類的常用方法 Error類和 Exception類的父類,常用的方法有 fillInStackTrace() 、 getLocalizedMessage() 、 getMessage() 、 printStackTrace()、printStackTrace(PrintStream) 、 printStackTrace(PrintWriter) 、 toString()。 (1) public native Throwable fillInStackTrace() 填寫執(zhí)行堆棧跟蹤信息。 該方法在應用程序重新拋出錯誤或異常時有用。例如: try { a = b / c。 } catch(ArithmeticThrowable e) { a = 。 throw ()。 } (2) public String getLocalizedMessage() 生成該 Throwable 的本地化描述。 子類可能會覆蓋該方法以便產(chǎn)生一個特定于本地的消息。 對于未覆蓋該方法的子類,缺省地返回調(diào)用 getMessage() 的結果。 Throwable類的常用方法 (3) public String getMessage() 返回該 throwable 對象的詳細信息。如果該對象沒有詳細信息則返回 null。 (4) public void printStackTrace() 把該 Throwable 和它的跟蹤情況打印到標準錯誤流。 (5) public void printStackTrace(PrintStream s) 把該 Throwable 和它的跟蹤情況打印到指定打印流。 (6) public void printStackTrace(PrintWriter s) 把該 Throwable 和它的跟蹤情況打印到指定打印流。 (7) public String toString() 返回該 throwable 對象的簡短字符串描述。 第 8章 Java異常處理 什么是異常 創(chuàng)建用戶異常類 異常的處理 捕獲異常 trycatchfinally 聲明拋棄異常 拋出異常 捕獲異常 trycatchfinally 一個方法中如果對某種類型的異常對象提供了相應的處理代碼,則這個方法可捕獲該種異常。捕獲異常是通過 trycatchfinally語句實現(xiàn)的。其語法為: try{ ...... }catch( ExceptionName1 e ){ ...... }catch( ExceptionName2 e ){ ...... } ...... }finally{ ...... } try 捕獲異常的第一步是用 try{… }選定捕獲異常的范圍,由 try所限定的代碼塊中的語句在執(zhí)行過程中可能會生成異常對象并拋棄。 捕獲異常 trycatchfinally catch 每個 try代碼塊可以伴隨一個或多個 catch語句,用于處理 try代碼塊中所生成的異常事件。 catch語句只需要一個形式參數(shù)來指明它所能夠捕獲的異常類型 ,這個類必須是 Throwable的子類 ,運行時系統(tǒng)通過參數(shù)值把被拋棄的異常對象傳遞給 catch塊。 catch塊中的代碼用來對異常對象進行處理,與訪問其它對象一樣,可以訪問一個異常對象的變量或調(diào)用它的方法。 getMessage( )是類 Throwable所提供的方法,用來得到有關異常事件的信息,類 Throwable還提供了方法printStackTrace( )用來跟蹤異常事件發(fā)生時執(zhí)行堆棧的內(nèi)容。例如: try{ ...... }catch( FileNotFoundException e ){ ( e )。 ( message: +() )。 ( )。 }catch( IOException e ){ ( e )。 } 捕獲異常 trycatchfinally catch 語句的順序 捕獲異常的順序和 catch語句的順序有關,當捕獲到一個異常時,剩下的catch語句就不再進行匹配。因此,在安排 catch語句的順序時,首先應該捕獲最特殊的異常,然后再逐漸一般化。也就是一般先安排子類,再安排父類。例如上面的程序如果安排成如下的形式: try{ ...... }catch(IOException e ){ ( e )。 ( message: +() )。 ( )。 }catch(FileNotFoundException e ){ ( e )。 } 由于第一個 catch語句首先得到匹配,第二個 catch語句將不會被執(zhí)行。編譯時將出現(xiàn) “ catch not reached”的錯誤。 捕獲異常 trycatchfinally finally 捕獲異常的最后一步是通過 finally語句為異常處理提供一個統(tǒng)一的出口,使得在控制流轉到程序的其它部分以前,能夠對程序的狀態(tài)作統(tǒng)一的管理。一般是用來關閉文件或釋放其他的系統(tǒng)資源。雖然 finally作為 trycatchfinally結構的一部分,但在程序是可選的,也就是說可以沒有 finally語句。如果存在finally語句,不論 try塊中是否發(fā)生了異常,是否執(zhí)行過 catch 語句,都要執(zhí)行finally語句。 另外, trycatchfinally可以嵌套。 聲明拋棄異常 如果在一個方法中生成了一個異常,但是這一方法并不確切地知道該如何對這一異常事件進行處理,這時,該方法就應該聲明拋棄異常,使得異常對象可以從調(diào)用棧向后傳播,直到有合適的方法捕獲它為止。 聲明拋棄異常是在一個方法聲明中的 throws子句中指明的。例如: public int read () throws IOException{ …… } throws子句中同時可以指明多個異常,之間由逗號隔開。例如: public static void main(String args[]) throws IOException,IndexOutOfBoundsException { …… } 最后,我們再次強調(diào),對于非運行時例外,如前例中的 IOException等,程序中必須要作出處理,或者捕獲,或者聲明拋棄。而對于運行時例外,如前例中的 ArithmeticException,IndexOutOfBoundsException,則可以不做處理。 聲明拋棄異常 【 例 84】 拋棄異常的例子(對例 81進行改進) // import .*。 public class Exception4{ public static void main(String args[])throws FileNotFoundException,IOException{ FileInputStream fis=new FileInputStream(“”)。 int b。 while((b=())!=1){ (b)。 } ()。 } } 聲明拋棄異常 【 例 85】 捕獲異常的例子(對例 81進行改進) import .*。 public class Exception5{ public static void main(String args[]) { try{ FileInputStream fis=new FileInputStream(“”)。 int b。 while((b=())!=1){ (b)。 } ()。 }catch(FileNotFoundException e){ ( e )。 ( message: +() )。 ( )。 }catch(IOException e){ ( e )。 } } } 拋出異常 拋出異常就是產(chǎn)生異常對象的過程,首先要生成異常對象,異?;蛘哂商摂M機生成,或者由某些類的實例生成,也可以在程序中生成。在方法中,拋出異常對象是通過 throw語句實現(xiàn)的。 例如: IOException e=new IOException()。 throw e 。 可以拋出的異常必須是 Throwable或其子類的實例。下面的語句在編譯時將會產(chǎn)生語法錯誤: throw new String(throw anything)。 自定義異常類必須是 Throwable的直接或間接子類。 拋出異常 【 例 6】 顯示拋出異常詳細情況的例子 // public class Exception6 { public static void main(String[] args) { try { throw new Exception(My Exception)。 } catch (Exception e) { (Caught Exception)。 (getMessage(): + ())。 (getLocalizedMessage(): + ())。 (toString(): + e)。 (printStackTrace():)。 ()。 } } } 拋出異常 程序運行結果如下 : d:\user\chap08java Exception6 Caught Exception getMessage():My Exception getLocalizedMessage():My Exception toString():: My Exception printStackTrace(): : My Exception at (:5) 拋出異常 例 87】 trycatchfinally嵌套的例子 class MyoneException extends Exception { } public class TryInbed { public static void main(String[] args) { (Entering first try block)。 try { (Entering second try block)。 try { throw new MyoneException()。 } finally {
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1