異常的處理方式之二:聲明異常(throws子句)


 當CheckedException產生時,不一定立刻處理它,可以再把異常throws出去。

      在方法中使用try-catch-finally是由這個方法來處理異常。但是在一些情況下,當前方法並不需要處理發生的異常,而是向上傳遞給調用它的方法處理。

      如果一個方法中可能產生某種異常,但是並不能確定如何處理這種異常,則應根據異常規范在方法的首部聲明該方法可能拋出的異常。

      如果一個方法拋出多個已檢查異常,就必須在方法的首部列出所有的異常,之間以逗號隔開。

【示例】典型代碼(先不敲!)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import  java.io.FileNotFoundException;
import  java.io.FileReader;
import  java.io.IOException;
 
public  class  Test9 {
     public  static  void  main(String[] args) {
         try  {
             readFile( "joke.txt" );
         catch  (FileNotFoundException e) {
             System.out.println( "所需文件不存在!" );
         catch  (IOException e) {
             System.out.println( "文件讀寫錯誤!" );
         }
     }  
     public  static  void  readFile(String fileName)  throws  FileNotFoundException,          
     IOException {
         FileReader in =  new  FileReader(fileName);
         int  tem =  0 ;
         try  {
             tem = in.read();
             while  (tem != - 1 ) {
                 System.out.print(( char ) tem);
                 tem = in.read();
             }
         finally  {
             in.close();
         }
     }
}

注意事項

      1. 方法重寫中聲明異常原則:子類重寫父類方法時,如果父類方法有聲明異常,那么子類聲明的異常范圍不能超過父類聲明的范圍。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM