Java错误: Unreported exception?

标签 java generics custom-exceptions

我有以下方法:

public T peek() throws StackEmptyException {
    Node<T> tracker = head; 
    while(tracker.getNext() != null) {
        tracker = tracker.getNext(); 
    }
    return tracker.getItem(); 
}

问题是当我尝试做类似的事情

int firstOne = stack.peek(); 

我收到一个未报告的异常 StackEmptyException 并且我不知道此时我做错了什么。 StackEmptyException 已在单独的类中生成。我是否应该让这个类扩展我创建的新异常类?如此迷茫。大家有什么想法吗?

最佳答案

由于 StackEmptyException 是一个检查异常(您首先不应该这样做),因此您应该在调用 peek()< 时处理该异常 方法。规则是,要么应该处理异常,要么声明抛出异常。

但是,我会退一步,将 StackEmptyException 更改为 Unchecked Exception。那么您就不需要处理它或将其声明为已抛出。

关于Java错误: Unreported exception?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22343975/

相关文章:

c# - 为什么通用 EventHandler<TArgs> 未得到充分利用?

c++ - 抛出未处理的自定义异常后如何调用 what()?

java - 在 Android View 中显示动态文本

java - 如何用空格分隔用户输入

java - 更改 REST API 的 URL 模式

java - 如何在java中转换为CRTP?

java - 传递给通用构造函数的 Java 通用接口(interface)的问题

asp.net-mvc - asp.net mvc 自定义异常过滤器强制返回完整 View ,而不是部分 View

python - 处理多个相同类型的异常并在 python 中恢复执行

java - Artifactory maven 插件部署失败