Почему в данном примере можно не писать блоки catch и finally одновременно?
ps: я понимаю,
1) что исключение пробрасывается дальше в сигнатуре
public static void main(String[] args) throws IOException
из за этого НАВЕРНОЕ можно обойтись без catch
2) Ресурс-файл закрывается тк это Try with resourses из за этого НАВЕРНОЕ не нужен finally
Ключевое слово НАВЕРНОЕ, а почему насамом деле можно обойтись без этих блоков одновременно?
К примеру в "try без ресурсов" даже если мы не кидаем исключение и не открываем ресурсы(то есть пустой try) нам надо добавить обязательно catch или finally
public static void main(String[] args) throws IOException {
Scanner sc=new Scanner(System.in);
String name;
while (true){
name=sc.nextLine();
try(FileInputStream fi = new FileInputStream(name)){
}
}
}