除了捕捉Java拋出的例外物件,還可以利用關鍵字throw自行拋出例外物件。若在方法中拋出例外物件後,沒以try catch語法立即處理,則需在方法宣告列後方以throws關鍵字聲明該方法將會拋出例外物件,以強迫呼叫者處理例外。
- import java.util.Scanner;
- public class Ch51
- {
- static Scanner s=new Scanner(System.in);
- //方法中發生例外但沒處理,以throws語法拋給呼叫者處理
- public static void main(String[] args) throws MyException
- {
- float x,y;
- System.out.print("輸入分子: ");
- x=s.nextFloat();
- System.out.print("輸入分母: ");
- y=s.nextFloat();
- if(y==0)
- throw new MyException("嘿嘿嘿~分母不可為零喔!");
- System.out.println(x+"/"+y+"="+(x/y));
- }
- }
- class MyException extends Exception
- {
- MyException(String str)
- {
- super(str); //呼叫父類別的建構子
- }
- }
複製代碼 |