1. 程式人生 > 其它 >[Java進階]學習筆記31:自定義異常類

[Java進階]學習筆記31:自定義異常類

技術標籤:Java學習java

自定義異常類:

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("恭喜您,註冊成功!"); } } }