gpt4 book ai didi

java - 何时在 Java 方法声明中使用 throws?

转载 作者:IT老高 更新时间:2023-10-28 11:42:54 26 4
gpt4 key购买 nike

所以我以为我对 Java 中的异常处理有很好的基本了解,但是我最近阅读了一些代码,这让我有些困惑和怀疑。我想在这里解决的主要疑问是,人们何时应该在 Java 方法声明中使用 throws,如下所示:

    public void method() throws SomeException
{
// method body here
}

通过阅读一些类似的帖子,我了解到 throws 被用作一种声明,在方法执行期间可能会抛出 SomeException

我的困惑来自一些看起来像这样的代码:

     public void method() throws IOException
{
try
{
BufferedReader br = new BufferedReader(new FileReader("file.txt"));
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
}

您是否有任何理由希望在此示例中使用 throws?似乎如果您只是对诸如 IOException 之类的东西进行基本的异常处理,那么您只需要 try/catch block 就可以了。

最佳答案

如果你正在捕获一个异常类型,你不需要抛出它,除非你打算重新抛出它。在您发布的示例中,开发人员应该做一个或另一个,而不是两者。

通常,如果您不打算对异常执行任何操作,则不应捕获它。

你能做的最危险的事情就是捕获一个异常而不用它做任何事情。

关于何时适合抛出异常的一个很好的讨论在这里

When to throw an exception?

关于java - 何时在 Java 方法声明中使用 throws?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4392446/

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