📜  Java程序创建自定义异常(1)

📅  最后修改于: 2023-12-03 15:16:37.468000             🧑  作者: Mango

Java程序创建自定义异常

在Java中,异常是一种处理错误或异常情况的机制。而自定义异常则是指开发者自己定义的异常类型,用于处理特定的异常情况。

创建自定义异常

要创建自定义异常,我们需要继承Java提供的Exception或者RuntimeException类。Exception类是所有可检查的异常类的父类,而RuntimeException类则是所有运行时异常类的父类。

public class MyException extends Exception {
    public MyException(String message) {
        super(message);
    }
}

在上面的代码中,我们通过继承Exception类创建了一个MyException类。这个类只有一个构造方法,接受一个字符串参数message作为异常信息,并将这个字符串传递给父类的构造方法。

类似的,如果我们想创建一个运行时异常类,可以继承RuntimeException类:

public class MyRuntimeException extends RuntimeException {
    public MyRuntimeException(String message) {
        super(message);
    }
}
抛出自定义异常

一旦我们创建了自定义异常类,就可以在程序中使用它了。要抛出自定义异常,可以像抛出标准异常一样使用throw关键字:

public void myMethod() throws MyException {
    // do something
    throw new MyException("Something went wrong");
}

在上面的代码中,我们定义了一个方法myMethod,并在方法中抛出了一个自定义异常MyException。注意,在方法签名中我们使用了throws MyException表示这个方法可能会抛出这个异常。

捕捉自定义异常

当我们在程序中抛出自定义异常后,也需要在合适的地方捕捉这个异常。捕捉自定义异常的方式与捕捉标准异常相同:

try {
    myObject.myMethod();
} catch (MyException e) {
    System.err.println("Something went wrong: " + e.getMessage());
}

上述代码会尝试调用myMethod方法,如果该方法抛出了MyException异常,就会被catch块捕捉到,并输出异常信息。

结论

自定义异常是Java中处理特定异常情况的重要机制之一。通过继承Exception或者RuntimeException类,可以创建自己的异常类并在程序中使用。要抛出和捕捉自定义异常,可以使用throwcatch关键字。