Вот код
catch (RuntimeException e) {
if (e.getCause() instanceof FileNotFoundException)
System.out.println(FAILED_TO_READ);
else if(e.getCause() instanceof FileSystemException){
System.out.println(FAILED_TO_WRITE);
}
// тут код по обработке Exceptio
}
Разве в catch не должно быть Exception?
Мы ведь обрабатываем исключения типа FileNotFoundException и FileSystemException, а они относятся к типу Exception, а не к RuntimeException