我正在为 Java 数据结构类做作业,我们必须使用链表实现从堆栈 ADT 构建一个程序。教授要求我们包含一个名为 popTop() 的方法,该方法弹出堆栈的顶部元素,如果堆栈为空,则抛出“StackUnderflowException”。据我所知,这是一个我们必须自己编写的异常类,我遇到了一些问题。如果有人可以帮助我,我将非常感激。这是我的一些代码:
private class StackUnderflowException extends RuntimeException {
public StackUnderflowException() {
super("Cannot pop the top, stack is empty");
}
public StackUnderflowException(String message) {
super(message);
}
}
那是我写的异常类,这里是我迄今为止写的 popTop() 方法的开始:
public T popTop() throws StackUnderflowException {
if (sz <= 0) {
throw new StackUnderflowException();
}
}
我收到错误提示 StackUnderflowException 不能是 RuntimeException 的子类,有人可以对此有所了解吗?在方法中,我收到错误说 StackUnderflowException 未定义。