[Java進階]學習筆記31:自定義異常類
阿新 • • 發佈:2020-12-09
自定義異常類:
java提供的異常類不夠我們使用,需要自己定義一些異常類
格式:
public class XXXException extends Exception | RunTimeException{
新增一個空引數的構造方法
新增一個帶異常資訊的構造方法
}
要求:我們模擬註冊操作,如果使用者名稱已存在,則丟擲異常並提示:親,該使用者名稱已經被註冊。
RegisterException.java
public class RegisterException extends Exception{
//新增一個空引數的構造方法
public RegisterException(){}
//新增一個帶異常資訊的構造方法
//直接呼叫父類的帶異常資訊的構造方法即可
public RegisterException(String s){
super(s);
}
}
Demo01RegisterException
public class Dem01RegisterException {
public static void main(String[] args) {
ArrayList<String> users = new ArrayList<> ();
users.add("老八");
users.add("Giao哥");
users.add("馬保國");
users.add("郭老師");
Scanner sc = new Scanner(System.in);
System.out.print("請輸入需要註冊的使用者名稱:");
String input = sc.next();
try{
userAdd (input,users);
} catch(RegisterException e){
e.printStackTrace();
}
}
private static void userAdd(String input,ArrayList<String> users) throws RegisterException{
if(users.contains(input)){
throw new RegisterException("親,該使用者名稱已經被註冊");
} else {
users.add(input);
System.out.println("恭喜您,註冊成功!");
}
}
}