Итак, я подумал, что у меня хорошее базовое понимание обработки исключений в Java, но я недавно читал код, который вызвал у меня некоторое замешательство и сомнения. Мое главное сомнение, которое я хочу здесь обсудить, - это когда следует использовать throws в объявлении метода Java, например:
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());
}
}
Есть ли причина, по которой вы хотели бы использовать выбросы в этом примере? Кажется, что если вы просто выполняете базовую обработку исключений для чего-то вроде IOException, вам просто понадобится блок try / catch и все.