📅  最后修改于: 2023-12-03 15:40:06.056000             🧑  作者: Mango
在Java中,可以使用getExceptionTypes()
方法来获取一个方法抛出的所有异常类型。该方法返回一个Class
数组,其中包含了所有的异常类型。
以下是getExceptionTypes()
方法的语法:
public Class[] getExceptionTypes() throws NoSuchMethodException, SecurityException
该方法不接受任何参数。
该方法返回一个Class
数组,其中包含了方法抛出的所有异常类型。
以下是使用getExceptionTypes()
方法的示例:
import java.lang.reflect.Method;
public class Example {
public void divide(int a, int b) throws ArithmeticException {
if (b == 0) {
throw new ArithmeticException("Division by zero!");
}
int result = a / b;
System.out.println("Result: " + result);
}
public static void main(String[] args) throws NoSuchMethodException {
Example example = new Example();
Method method = example.getClass().getMethod("divide", int.class, int.class);
Class[] exceptionTypes = method.getExceptionTypes();
for (Class cls : exceptionTypes) {
System.out.println(cls.getName());
}
}
}
输出结果:
java.lang.ArithmeticException
在上面的示例中,我们首先定义了一个divide()
方法,该方法抛出一个ArithmeticException
异常。然后我们使用getMethod()
方法获取该方法的Method
对象,然后使用getExceptionTypes()
方法获取该方法抛出的所有异常类型,并将其打印到控制台上。
getExceptionTypes()
方法可以帮助我们获取一个方法抛出的所有异常类型。该方法通常用于反射和代理的实现。