java中自定义异常类

Posted more harder, the more fortunat

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中自定义异常类相关的知识,希望对你有一定的参考价值。

hello,大家好,今天跟大家分享一下java中如何自定义异常,以后如果有新的心得,再添加,欢迎前辈指导。。。

首先,上Api,看一下异常和错误的父类:

 

然后,现在假设我有个循环(i=0;i<100;i++),我想在i==10的时候停止运行,并执行我自定义的异常,该怎么做呢,请看:

//自定义异常类:

  自定义异常类,需要继承Throwable或Exception,并且重写printStackTrace()方法,此方法就是自定义异常的执行结果

public class MyException extends throwable{

  @Override
  public void printStackTrace() {
    System.out.println("my exception is");
  }

}

//测试类

public class ExceptionTest{

  public static void main(String args[]){

    for(int i=0;i<100;i++){

      if(i==10){

        try{

          throw new MyException();//执行我自定义异常(此处throw不是抛出异常,是执行异常,(注意和throws的区别:throws位置是在方法后面,是抛出异常))

         }catch(MyException e){

          e.printStackTrace();//此处自定义类继承了throwable类,并且重写了printStackTrace()方法,e这个对象属于子类,不存在多态关系,因此执行的是子类中的方法

         }

      }

    }

  }

}

以上是关于java中自定义异常类的主要内容,如果未能解决你的问题,请参考以下文章

springboot中自定义异常以及定制异常界面

Delphi 中自定义异常及异常处理的一般方法

在 Spring Boot 中自定义异常返回空消息 [重复]

处理 Kotlin Coroutines 中自定义 okhttp 拦截器引发的异常

java编程实现自定义异常判断一个手机号码的合法性

自定义RunTimeException工具类