我在谷歌上搜索并阅读了许多关于 try,catch 和 throws 的答案。我仍然无法回答我的问题。
我的问题是,我们尝试一段代码,如果发生异常,执行将立即终止,并由 catch 处理其余部分。实际上,我们通过在括号中声明一个类(沿实例)来定义异常的范围catch(IOException e)
这进一步按照我们在块中的代码运行..say,打印错误
{
e.printStackTrace();
}
然而,在 throws 的情况下,我们执行与 catch 中相同的操作,在 throws 之后在括号内单独声明类,我们期望这是我们期望的异常源。
.
.
}
catch(Exception e)
{
e.printStackTrace
}
如果发生,执行终止,返回给调用者并最终执行 try catch 本身。
所以我真的不明白是什么让投掷如此特别。(请不要与复杂的答案混淆。您可以假设我是初学者,并且我确信,传教士知道如何让任何人理解这些概念)。