定義三種新類型的異常。
寫一個類,在該類的三個方法中拋出三種不同的異常。
然后在mian方法中調用這個類的不同方法,嘗試用try catch捕獲你寫的異常。
public class Work2 { public static void main(String[] args) { ExceptionGenerator exceptionGenerator = new ExceptionGenerator(); //處理第一種自定義編譯時異常 try { exceptionGenerator.genFirstException(); } catch (MyFirstException e) { e.printStackTrace(); } //處理第二種自定義運行時異常 try { exceptionGenerator.genSecondException(); } catch (MySecondException e) { e.printStackTrace(); } //處理第三種自定義編譯時異常 try { exceptionGenerator.genThirdException(); } catch (MyThirdException e) { e.printStackTrace(); } } } class ExceptionGenerator { //拋出第一種編譯時異常 public void genFirstException() throws MyFirstException { throw new MyFirstException("第一種編譯時類型的異常"); } //拋出第二種運行時異常 public void genSecondException() { throw new MySecondException("第二種運行時類型的異常"); } //拋出第二種編譯時異常 public void genThirdException() throws MyThirdException { throw new MyThirdException("第三種編譯時類型的異常"); } } /* 第一種自定義編譯時異常 */ class MyFirstException extends Exception { public MyFirstException(String msg) { super(msg); } } /* 第二種自定義運行時異常 */ class MySecondException extends RuntimeException { public MySecondException(String msg) { super(msg); } } /* 第三種自定義編譯時異常 */ class MyThirdException extends Exception { public MyThirdException(String msg) { super(msg); } }