栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

自定义异常及全局异常拦截处理

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

自定义异常及全局异常拦截处理

实际项目开发中肯定少不了异常的处理,了解自定义 异常 和全局异常处理让我们更加愉快的工作 一、常见的异常
  • NullPointerException===============>空指针异常
  • ClassCastException================>类型强制转换异常
  • IndexOutOfBoundsException=========>索引越界异常
  • SQLException====================>操作数据库异常
  • IOException======================>输入输出异常
  • NoSuchMethodException============>方法未找到异常
  • ClassNotFoundException============>类找不到异常
  • java.lang.IllegalAccessError==========>违法访问错误。当一个应用试图访问、修改某个类的域(Field)或者调用其方法,但是又违反域或方法的可见性声明,则抛出该异常。
  • java.lang.ExceptionInInitializerError====>初始化程序错误。当执行一个类的静态初始化程序的过程中,发生了异常时抛出。静态初始化程序是指直接包含于类中的static语句段。

PS: 异常还有很多,以上只是列举了一些常见的异常,更加详细的异常种类介绍请参考 这里

二、异常的处理

异常处理的方式无外乎两种:

  • try/catch发现异常,立即处理
  • throw 往上抛出,交给调用者处理

1、捕获异常示例:

public class ExcepTest{
    public static void main(String args[]){
    int a[] = new int[2];
    try{
       System.out.println("Access element three :" + a[3]);
    }catch(ArrayIndexOutOfBoundsException e){
       System.out.println("Exception thrown  :" + e);
    }finally{
       a[0] = 6;
       System.out.println("First element value: " +a[0]);
       System.out.println("The finally statement is executed");
    }
  }
}

2、抛出示例:

public class className{
   public void withdraw() throws RemoteException,InsufficientFundsException{
       // Method implementation
   }
}

三、自定义异常
public class RequiredFieldIsNullException extends RuntimeException{

    //使用父类的无参构造
    public RequiredFieldIsNullException(){
        super();
    }

    //使用父类的String传参构造
    public RequiredFieldIsNullException(String msg){
        super(msg);
    }
}

四、全局异常处理

@RestControllerAdvicehttps 注解详情

@RestControllerAdvicehttps
public class GlobalExceptionAdvice {

    //捕获异常并对异常进行响应的处理
    @ExceptionHandler(RequiredFieldIsNullException.class)
    public Result RequiredFieldIsNullException(RequiredFieldIsNullException e){
        //todo 捕获异常后的逻辑处理
    }

}


转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号