自定义异常

用户自定义异常类,只需继承exception类即可
在程序中自定义异常,大致分为几步:

  1. 创建自定义异常类。
  2. 在方法中通过throw关键字抛出异常对象
  3. 若在当前抛出异常的方法中处理异常,可以使用try-catch语句捕获并处理;否则在方法的声明处通过throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作
  4. 在出现异常方法的调用者中捕获并处理异常
//自定义异常类中
public class MyException extends Exception {
    //传递数字>10;
    private int detail;
    public MyException(int detail) {
        this.detail = detail;
    }

    //toString:异常的打印信息
    @Override
    public String toString() {
        return "MyException{" + "异常在" + detail + '}';
    }
}
//测试类中
public class Test {

    //可能存在的方法
    static void test(int a) throws MyException{
        System.out.println("传递的参数为" + a);
        if(a>10){
            /*try{
                throw new MyException(a);
            }catch (MyException e){
                e.printStackTrace();
            }
            方式一:捕获后打印
             */

            throw new MyException(a); //抛出
        }
        System.out.println("OK");
    }

    static void main(String[] args) {
        try {
            test(11);
        } catch (MyException e) {
            System.out.println("MyException=>"+ e);
        }
    }
}

经验总结:

  1. 处理运行时异常时,采用逻辑去合理规避同时辅助try-catch处理
  2. 在多重catch块后,可以加一个catch(Exception)来处理可能会被遗漏的异常
  3. 对于不确定的代码,可以加上try-catch,处理潜在的异常
  4. 要根据不同的业务要求与异常类型去决定如何具体处理异常
  5. 尽力处理异常,切忌只简单调用printDtackTrace()去打印输出
    6.尽力添加finally语句块去释放占用的资源
posted on 2026-02-14 22:33  AAA神鹰  阅读(7)  评论(0)    收藏  举报