我正在尝试创建自己的异常,但遇到了问题......
class MyException extends Exception {
MyException (String w) { super ( w ); }
};
public class RozkladLiczby{
private int[] Array;
RozkladLiczby(int n) throws MyException {
try{
Array = new int[n+2];
}
catch(OutOfMemoryException ex){
throw new MyException ("Not enough memory" );
}
}
}
Run Code Online (Sandbox Code Playgroud)
编译器说它无法在catch中找到符号.
RozkladLiczby.java:16: error: cannot find symbol
catch(OutOfMemoryException ex){
^
symbol: class OutOfMemoryException
location: class RozkladLiczby
1 error
Run Code Online (Sandbox Code Playgroud)
那是因为OutOfMemoryExceptionJava中没有; 有OutOfMemoryError.如果没有记忆,那么你能做什么?创建新的异常没有内存.这就是为什么它是一个Error而不是一个Exception.