java 异常抛出 顺序_java异常抛出时间顺序
1、當前方法拋出異常時(交給java虛擬機執行異常處理)
public class ExceptionTest5 {
public void method(String str) throws MyException{
if(str == null){
throw new MyException("傳入的字符串參數不能為null");
}
else{
System.out.println(str);
}
}
/*
* 根據多態,也可以拋出 Exception類型的異常:
* 1) throws Exception
* 2) 捕獲也可以這樣寫 catch(Exception e)
*/
public static void main(String[] args) throws MyException{
try{
ExceptionTest5 test = new ExceptionTest5();
test.method(null);
}catch(MyException e){
e.printStackTrace();
}
finally{
System.out.println("異常處理完畢");
}
System.out.println("程序執行完畢");
}
}
執行結果為:
異常處理完畢
程序執行完畢
com.ahuier.exception.MyException: 傳入的字符串參數不能為null at com.ahuier.exception.ExceptionTest5.method(ExceptionTest5.java:6) at com.ahuier.exception.ExceptionTest5.main(ExceptionTest5.java:22)
2、當前方法不拋出異常
public class ExceptionTest5 {
public void method(String str) throws MyException{
if(str == null){
throw new MyException("傳入的字符串參數不能為null");
}
else{
System.out.println(str);
}
}
/*
* 根據多態,也可以拋出 Exception類型的異常:
* 1) throws Exception
* 2) 捕獲也可以這樣寫 catch(Exception e)
*/
public static void main(String[] args) {
try{
ExceptionTest5 test = new ExceptionTest5();
test.method(null);
}catch(MyException e){
e.printStackTrace();
}
finally{
System.out.println("異常處理完畢");
}
System.out.println("程序執行完畢");
}
} 執行結果: com.ahuier.exception.MyException: 傳入的字符串參數不能為null at com.ahuier.exception.ExceptionTest5.method(ExceptionTest5.java:6) at com.ahuier.exception.ExceptionTest5.main(ExceptionTest5.java:22) 異常處理完畢 程序執行完畢
總結
以上是生活随笔為你收集整理的java 异常抛出 顺序_java异常抛出时间顺序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java sql server 存储过程
- 下一篇: java mock什么意思_java @