Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Java Как узнать какую ошибку может генерировать метод чтобы обработать ее?

Хаку Ученик (32), на голосовании 1 год назад
             try { 
name = driver.findElement(By.cssSelector(".ryNqvb"));
} catch() {

}
Голосование за лучший ответ
Fatin Neon Ученик (100) 1 год назад
Все очень легко удоли Java и и не надо будет узнавать какую ошибку может генерировать
Татьяна Просветленный (36374) 1 год назад
Для того, чтобы узнать, какую ошибку может генерировать метод, необходимо посмотреть на его документацию. В документации должно быть указано, какие исключения могут быть сгенерированы методом. В случае с методом findElement из библиотеки Selenium, он может генерировать исключение NoSuchElementException, если элемент не найден на странице. Чтобы обработать это исключение, необходимо добавить блок catch и указать тип исключения, например:
 try {  
name = driver.findElement(By.cssSelector(".ryNqvb"));
} catch (NoSuchElementException e) {
// Обработка исключения
}
В блоке catch можно написать код, который будет выполняться в случае генерации исключения. Например, можно вывести сообщение об ошибке или выполнить другие действия, чтобы избежать сбоя программы.
Оракул Оракул (62089) 1 год назад
Перейти в описание метода и посмотреть его throws
Или запустить программу без try catch и ошибка скажет какое исключение надо отлавливать
Андрей Панарин Искусственный Интеллект (249294) 1 год назад
Есть два вида исключений: проверяемые и непроверяемые.

Если метод может выбросить проверяемое исключение (дочерний класс от Exception, но не RuntimeException), то такой метод должен объявить это в своей шапке после слова throws. В этом случае компилятор удостоверится в том, что в точке вызова этого метода приняты меры по обработке или пробросу этого исключения.

Непроверяемые исключения (RuntimeException и его дочерних классов) объявлять и обрабатывать не требуется. Но если такое вдруг выпадет и его некому будет обработать, то оно поднимется через весь стек вызовов и остановит поток, исполняющий программу.

Если вы хотите перехватывать все исключения, сделайте блок catch (Exception e) или более общий блок catch (Throwable t).

Если же вам нужно перехватывать конкретное непроверяемое исключение, то тут можно:
а) обратиться к документации на метод;
б) посмотреть исходный код метода и узнать, что он может выбрасывать;
в) определить опытным путем, какую ошибку он по факту бросает, какую вы намерены перехватить.

Например, у метода Integer.parseInt в документации явно прописано, что он может выбросить NumberFormatException. Исключение непроверяемое, поэтому его не обязательно перехватывать. Но если вам нужно, то можете перехватить.
Neon mode Гуру (3119) 1 год назад
Используй catch. Если ты не знаешь, какое исключение бросает метод, то пиши:
 catch(Exception e) 
Или:
 catch(Throwable e) 
Похожие вопросы