📅  最后修改于: 2023-12-03 15:16:38.180000             🧑  作者: Mango
在Java中,抛出关键字可以用于抛出异常,以及在 catch 块中重新抛出异常。本文将介绍如何使用 throw 关键字,以及如何使用 try-catch 块来捕获抛出的异常。
在 Java 中,如果代码出现了异常,可以使用 throw 关键字手动抛出异常。throw 关键字后跟一个异常对象。示例代码如下:
public class Test {
public static void main(String[] args) {
int age = 15;
if (age < 18) {
throw new RuntimeException("未成年人不允许参加此活动!");
} else {
System.out.println("欢迎您参加活动!");
}
}
}
以上代码中,如果年龄小于18岁,则会抛出一个 RuntimeException 异常,并打印出异常信息。如果年龄大于或等于18,则会输出 "欢迎您参加活动!"。
在 Java 中,可以使用 try-catch 块来捕获异常并处理异常。catch 块中的代码会在 try 块中出现异常时被执行。
例如,如果我们要对上述示例代码进行异常处理,则可以将其修改为如下代码:
public class Test {
public static void main(String[] args) {
int age = 15;
try {
if (age < 18) {
throw new RuntimeException("未成年人不允许参加此活动!");
} else {
System.out.println("欢迎您参加活动!");
}
} catch (RuntimeException e) {
System.err.println(e.getMessage());
}
}
}
以上代码中,我们使用了 try-catch 块来处理异常。如果年龄小于18岁,则会抛出一个 RuntimeException 异常,并在 catch 块中打印出异常信息。否则,会输出 "欢迎您参加活动!"。
除了使用内置的异常类型,也可以自定义异常类型,并使用 throw 关键字抛出。自定义异常类需要继承 Exception 类或其子类。例如,我们可以定义一个 AgeOutOfBoundsException 异常类,用于表示年龄超出范围的异常:
public class AgeOutOfBoundsException extends Exception {
public AgeOutOfBoundsException(String message) {
super(message);
}
}
然后,我们可以在程序中使用该自定义异常类:
public class Test {
public static void main(String[] args) {
int age = 15;
try {
if (age < 18) {
throw new AgeOutOfBoundsException("年龄超出范围!");
} else {
System.out.println("欢迎您参加活动!");
}
} catch (AgeOutOfBoundsException e) {
System.err.println(e.getMessage());
}
}
}
以上代码中,我们抛出了一个自定义的 AgeOutOfBoundsException 异常,并在 catch 块中处理该异常。
本文介绍了 Java 中抛出关键字 throw 的使用方法,以及如何在 catch 块中捕获和处理异常。同时,本文还介绍了如何自定义异常类,以及如何将自定义异常与 throw 关键字一起使用。熟练掌握异常处理机制可以提高程序的健壮性和可靠性,值得在实际开发中注意。