我們在寫程式的過程中,往往需要自己定義一個異常,比如:在輸入學生成績資訊的時候,往往需要限定一個範圍,因為分數是從0到100的(假設成績滿分是100分),這個時候想讓輸入成績在0到100範圍外程式運作時抛出一個異常,這時該怎麼做?這就需要我們自己定義一個異常了,因為IDEA不知道這是一個異常,下面是具體做法:
首先定義一個異常類fenshuyichang繼承Exception類
package yc;
public class fenshuyichang extends Exception{
public fenshuyichang(){}//無參構造
public fenshuyichang(String message){ //有參構造
super(message);//調用父類的有參構造,super關鍵字必須要在第一行
}
}
然後定義一個teacher類
package yc;
import java.util.Scanner;
public class Teacher {
public void fenshu (int i) throws fenshuyichang//抛出異常,以後誰調用這個方法,誰來處理此異常{
if(i<0||i>100){
throw new fenshuyichang("你輸入的分數有誤,分數應在0到100之間");//抛出異常類的對象
}
else{
System.out.println("分數正常");
}
}
}
然後寫main方法,輸入分數,并且調用fenshu方法來判斷分數是否正常
package yc;
import java.util.Scanner;
public class shuru {
public static void main(String[] args) {
Scanner i=new Scanner(System.in);
int a=i.nextInt();
Teacher teacher = new Teacher();
try {
teacher.fenshu(a);
}
catch (fenshuyichang b){
b.printStackTrace();
}
}
}
運作結果:
由于分數在0到100之間,是以分數正常

由于分數不在0-100之間,是以Java提示異常
以上就是自定義異常的内容