- 最後登錄
- 2024-3-2
- 在線時間
- 5750 小時
- 註冊時間
- 2008-12-16
- 閱讀權限
- 20
- 精華
- 0
- UID
- 5479717
- 帖子
- 352
- 積分
- 131 點
- 潛水值
- 13191 米
| 本帖最後由 zero720617 於 2009-2-18 03:48 AM 編輯
你可以去買SCJP猛虎出閘這本書,裡面有比較詳細的說明和範例
利用throws自訂例外方法,throw丟出例外-
- static int numerator=20;
- static int[] denominator={0,2,4};
- static String answer;
- public static void main(String[] arg)
- {
- try
- {
- method(0);
- }catch(Exception e)
- {
- System.out.println(e.getMessage());
- }
- System.out.println(answer);
- }
- static void method(int x)throws Exception
- {
- double sum=0;
- if(x==0)
- {
- answer="無法計算";
- throw new Exception("不得為"+x);
- }
- sum=numerator/denominator[x];
- answer=String.valueOf(sum);
複製代碼 當method(0)丟出一個例外(第22行會執行到),則該例外會被第10行擷取,而e.getMessage()所抓到的內容,將會是第22行中所撰寫的錯誤訊息字樣。
throw所丟出的例外類別必須是throws的子類別(相等也可以)... |
|