hello,大家好,今天跟大家分享一下java中如何自定義異常,以后如果有新的心得,再添加,歡迎前輩指導。。。
首先,上Api,看一下異常和錯誤的父類:

然后,現在假設我有個循環(i=0;i<100;i++),我想在i==10的時候停止運行,並執行我自定義的異常,該怎么做呢,請看:
//自定義異常類:
自定義異常類,需要繼承Throwable或Exception,並且重寫printStackTrace()方法,此方法就是自定義異常的執行結果
public class MyException extends throwable{
@Override
public void printStackTrace() {
System.out.println("my exception is");
}
}
//測試類
public class ExceptionTest{
public static void main(String args[]){
for(int i=0;i<100;i++){
if(i==10){
try{
throw new MyException();//執行我自定義異常(此處throw不是拋出異常,是執行異常,(注意和throws的區別:throws位置是在方法后面,是拋出異常))
}catch(MyException e){
e.printStackTrace();//此處自定義類繼承了throwable類,並且重寫了printStackTrace()方法,e這個對象屬於子類,不存在多態關系,因此執行的是子類中的方法
}
}
}
}
}
