Подтвердить что ты не робот

Разница между try-catch и throw в java

В чем разница между предложением try-catch и throw. Когда их использовать?

Пожалуйста, дайте мне знать.

4b9b3361

Ответ 1

  • Блок try будет выполнять чувствительный код, который может генерировать исключения
  • Блок catch будет использоваться всякий раз, когда исключение (типа catch) выбрано в блоке try
  • Блок finally вызывается в каждом случае после блоков try/catch. Даже если исключение не поймано или если ваши предыдущие блоки нарушают поток выполнения.
  • Ключевое слово throw позволит вам исключить исключение (которое нарушит поток выполнения и может быть захвачен в блоке catch).
  • Ключевое слово throws в прототипе метода используется для указания того, что ваш метод может генерировать исключения указанного типа. Это полезно, когда вы проверили исключение (исключение, которое вы должны обрабатывать), которое вы не хотите улавливать в своем текущем методе.

Ресурсы:


В другой заметке вы должны действительно принять некоторые ответы. Если кто-то столкнется с теми же проблемами, что и вы, и найдет свои вопросы, он/она будет рад прямо видеть правильный ответ на вопрос.

Ответ 2

Если вы выполните следующий пример, вы узнаете разницу между блоком Throw и Catch.

В общих чертах:

Блок catch будет обрабатывать исключение

throws передаст ошибку своему вызывающему абоненту.

В следующем примере ошибка возникает в throwsMethod(), но она обрабатывается в методе catchMethod().

public class CatchThrow {

private static void throwsMethod() throws NumberFormatException {
    String  intNumber = "5A";

    Integer.parseInt(intNumber);
}

private static void catchMethod() {
    try {

        throwsMethod();

    } catch (NumberFormatException e) {
        System.out.println("Convertion Error");
    }

}

public static void main(String[] args) {
    // TODO Auto-generated method stub

    catchMethod();
}

}

Ответ 3

Предложение Try/catch and throw предназначено для разных целей. Поэтому они не являются альтернативой друг другу, но дополняют друг друга.

  • Если вы выбрали исключенное исключение в своем коде, оно должно быть внутри некоторого try/catch в кодах, вызывающих иерархию.

  • И наоборот, вам нужен блок try/catch только в том случае, если в коде есть код броузера (ваш код или вызов API), который выдает проверенное исключение.

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

Ответ 4

Все эти ключевые слова try, catch и throw связаны с концепцией обработки исключений в java. Исключение - это событие, которое происходит во время выполнения программ. Исключение нарушает нормальный поток приложения. Обработка исключений - это механизм, используемый для обработки исключения, так что нормальный поток приложения может поддерживаться. Блок try-catch используется для обработки исключения. В блоке try мы записываем код, который может генерировать исключение, а в блоке catch мы пишем код для обработки этого исключения. Ключевое слово "Бросок" используется для явного исключения исключения. Как правило, ключевое слово throw используется для генерирования исключений, определенных пользователем.

Подробнее см. учебник по Java для начинающих.

Ответ 5

Другие уже дали исчерпывающие ответы, но если вы ищете еще больше информации, учебники Oracle Java всегда являются хорошим ресурсом. Здесь учебник Java для Exceptions, который подробно описывает все ваши вопросы; https://docs.oracle.com/javase/tutorial/essential/exceptions/index.html

Ответ 6

try - добавить секретный код catch - обрабатывать исключение наконец - всегда выполняется ли исключение или нет. Связан с try -catch. Используется для закрытия ресурса, который мы открыли в блоке try throw - передать наше созданное исключение JVM вручную. Используется для создания настраиваемого исключения throws - делегировать ответственность обработки исключений методу вызывающего или основному методу.