gpt4 book ai didi

java - 为什么在已经声明时处理或声明错误?

转载 作者:行者123 更新时间:2023-12-04 23:11:00 25 4
gpt4 key购买 nike

这是代码示例,我收到错误“必须被捕获或声明到被抛出”但我有

已经处理了 IOException。那么你能告诉我为什么会出现错误吗?代码也是

遵循句柄和声明规则。

public void rethrow() throws SQLException, IOException {
try {
couldThrowAnException();
}
catch(Exception e) {
e = new IOException();
throw e; //Error: must be caught or declare to be thrown
}
}

最佳答案

您遇到的问题是编译器处理变量声明类型,而不是您分配给变量的类型。变量是 Exception 类型,它不是 throws 子句的一部分。

如果您更改 catch() 子句以匹配 IOException,它将编译。

我建议您阅读 the Exceptions TrailJava Language Tutorial .

关于java - 为什么在已经声明时处理或声明错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32710256/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com