我有一个检查2D数组中的斑点的方法,它还会检查它们是否为空。我想抛出ArrayIndexOutOfBoundsException
,因为我已经检查了null。
我在声明方法后尝试添加throws ArrayIndexOutOfBoundsException
,但它不起作用。我该怎么做呢?
答案 0 :(得分:8)
throws
表示该方法可以抛出该异常。要将其实际放入方法体中,请使用throw new ArrayIndexOutOfBoundsException();
答案 1 :(得分:3)
试试这个:
throw new ArrayIndexOutOfBoundsException("this is my exception for the condition");
答案 2 :(得分:1)
如果您只是将函数列为能够抛出异常但从未在函数中实际抛出异常,则不会生成任何异常。
如果抛出异常但未将该函数列为能够抛出异常,则可能会收到编译器错误或有关未捕获异常的警告。
您需要将函数列为抛出ArrayIndexOutOfBoundsException并在函数中的某处抛出异常。
例如:
public ... myArrayFunction(...) throws ArrayIndexOutOfBoundsException {
.... // handle the array
if (some condition) {
throw new ArrayIndexOutOfBoundsException("Array Index Out of Bounds");
}
}
答案 3 :(得分:0)
基本上throws
关键字告诉我们该方法可以抛出异常。如果要抛出任何类型的异常,则需要调用该类型的构造函数。
throw new NullPointerException("Null Pointer Exception");
答案 4 :(得分:0)
在您的方法声明后写:
private returnType methodName(CommunicationObject requestObject)
throws ArrayIndexOutOfBoundException {
}