21xrx.com
2024-09-17 04:44:24 Tuesday
登录
文章检索 我的文章 写文章
Java实战:自定义异常的使用案例
2023-06-15 20:39:49 深夜i     --     --
Java 自定义异常 异常处理

Java是一种流行的面向对象编程语言,具有强大的异常处理机制。Java异常分为运行时异常和非运行时异常。除了Java内置的异常类型之外,我们还可以创建自己的异常类型,以便更好地控制和处理错误情况。在这篇文章中,我们将讨论Java中如何自定义异常,并演示如何在实际应用中使用这些异常。

自定义异常的一般语法类似于以下代码:


class MyException extends Exception {

  public MyException(String errorMessage) {

   super(errorMessage);

  }

}

上面的代码定义了一个名为MyException的新异常类,它扩展了Java内置的Exception类。该类具有一个构造函数,其参数为一个错误信息。可以像使用其他Java内置异常类一样使用自定义异常。

下面是一个简单的使用自定义异常的示例:


class AgeException extends Exception {

  public AgeException(String errorMessage) {

   super(errorMessage);

  }

}

class Person {

  private int age;

  public void setAge(int age) throws AgeException {

   if (age < 0 || age > 150) {

     throw new AgeException("Invalid age!");

   }

   else

     this.age = age;

   

  }

  public int getAge()

   return age;

 

}

class Main {

  public static void main(String[] args) {

   Person person = new Person();

   try {

     person.setAge(-1);

   }

   catch (AgeException e) {

     System.out.println(e.getMessage());

   }

   try {

     person.setAge(200);

   }

   catch (AgeException e) {

     System.out.println(e.getMessage());

   }

   System.out.println("Age: " + person.getAge());

  }

}

在上面的代码中,我们定义了一个名为AgeException的新异常类,并在Person类的setAge方法中使用了它。如果年龄参数小于0或大于150,则抛出AgeException。在Main类的main方法中,我们试图设置超出有效范围的年龄,使用try-catch块捕获并处理异常。最后,我们打印出Person对象的年龄。

从以上代码和解释中可以看出,自定义异常可以用于Java中的各种场景,比如校验输入参数、处理业务逻辑和错误提示等。在使用自定义异常时,请尽可能采用有意义的异常与错误信息以方便排查问题与查找错误。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复