Разница между бросками против бросков в Java
Исключением является событие, которое происходит во время выполнения программы в Java, что в основном препятствует общему выполнению кода. Иногда система обрабатывает исключение по умолчанию, но в некоторых случаях нам нужно обрабатывать исключение на основе нашего кода или ситуаций в явном виде. Обработку исключений можно настроить с помощью ключевых слов: try, catch, throw, throws и finally. Когда мы хотим определить исключение внутри нашего кода, мы будем использовать throw, тогда как когда мы хотим явно определить несколько исключений, мы будем использовать throw. В этой теме мы обсудим сравнение бросков с бросками
Что такое Бросок?
Когда мы хотим обработать любое исключение в нашем коде, которое не проверено, мы будем использовать throw. Бросок может использоваться внутри нашего кода для явной обработки исключений. Помните, что мы можем обрабатывать только один тип исключений одновременно с помощью throw. Если вы хотите использовать для многократного использования throw, вам нужно использовать throw много раз.
Синтаксис:
throw
Пример:
throw new ArithmeticException();
Эти экземпляры исключений должны быть подклассом Throwable. Это связано с тем, что Throwable имеет свой подкласс под названием Exception, а в классе исключений находятся все пользовательские классы исключений. Поэтому убедитесь, что вы используете экземпляры исключений, которые являются подклассами под строкой throwable
Теперь давайте разберемся с потоком программы, когда мы ее используем для броска. Код будет проходить до тех пор, пока не достигнет броска, и после этого он будет искать блок try-catch. Блок try проверяется, чтобы проверить, есть ли какой-либо оператор внутри блока catch, в котором упомянуто исключение, похожее на вхождение. Если да, то контроль переносится на это. Если нет, он будет искать следующий блок try-catch, и это продолжается. Предположим, что он не находит ни одного такого блока try-catch для обработки исключения, тогда система обработает исключение, используя обработчик исключений по умолчанию, и код будет завершен.
Что такое Броски?
Когда мы предполагаем, что метод может показывать некоторые исключения в нашем коде на основе опыта, мы упоминаем все исключения в сигнатуре метода, используя ключевое слово throws. Все исключения будут упомянуты через запятую.
Синтаксис:
() throws,
Пример:
void ExceptionExample() throws ArithmeticException, NullPointerException
(
//code
)
Поскольку у вас есть представление о том, что делают броски и броски, давайте посмотрим на различия между бросками и бросками, как показано ниже:
Сравнение лицом к лицу между броском и броском (инфографика)
Ниже приведены 5 основных различий между Throw и Throws в Java.
Ключевые различия между бросками против бросков
Давайте посмотрим на ключевые различия между бросками против бросков в Java, как показано ниже:
- Когда мы хотим определить исключение внутри нашего кода, мы будем использовать throw. Но когда мы хотим явно определить исключения, мы будем использовать throws.
- Если мы используем throw, код не может выполняться в случае проверенных исключений. Когда исключения проверяются, они могут быть обработаны с помощью бросков
- Синтаксически мы записываем переменную для экземпляра после throw. Принимая во внимание, что мы пишем классы исключений, разделенные запятыми после бросков
- Используем throw по определению метода. Принимая во внимание, что мы объявляем исключение throws в сигнатуре метода.
- Бросок имеет ограничение обработки единственного исключения за один раз. С другой стороны, Throws может обрабатывать несколько исключений.
Сравнительная таблица бросков против бросков
Давайте обсудим лучшее сравнение между Throw и Throws в Java
Основа сравнения бросков против бросков |
бросать |
Броски |
Как или когда использовать | В тех случаях, когда нам нужно предоставить логическое исключение внутри кода, мы обычно используем ключевое слово throw в функции.
| В тех случаях, когда утверждение функции может привести к исключению, в этих случаях мы обычно используем ключевое слово throws с функцией для обработки этих исключений.
|
На основе исключения | В один момент времени бросок может быть использован, чтобы бросить только одно исключение. Когда нам нужно выбросить конкретное исключение, мы будем использовать throw.
Например:
| Броски могут обрабатывать несколько исключений. Когда нам нужно обработать несколько исключений, мы можем использовать throws, где имена исключений упоминаются через запятую. Когда происходит какое-либо исключение, оно автоматически сопоставляется с объявленными исключениями с помощью throws и обрабатывает соответственно.
Например:
|
С точки зрения синтаксиса | Мы используем throw внутри функции и для обработки одного типа исключения
Например:
| Мы будем использовать throw с функцией для обработки нескольких исключений за один раз, используя имя этих классов исключений.
Например:
|
Проверенная / непроверенная перспектива | Проверенные исключения не могут быть обработаны броском. Он может обрабатывать только непроверенные исключения, которые не могут быть обработаны бросками или проверенными исключениями.
Например:
| Когда мы узнаем об априорных исключениях и упомянем их в бросках, они станут проверенными исключениями.
Например:
|
Пример кода | Бросок:
| Броски:
|
Вывод
Это различия между throw и throws в Java. Броски могут дать вам свободу использования нескольких исключений за один раз, но бросок не может. Основываясь главным образом на этом различии, вы должны использовать throw, если вам нужно предоставить несколько исключений за один раз, если вы не уверены, тогда просто используйте throw, чтобы помещать исключения по одному.
Рекомендуемые статьи
Это руководство к броску против бросков в Java. Здесь мы обсуждаем броски против бросков в ключевых различиях java с инфографикой и таблицей сравнения. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -
- Список Java и список массивов
- JavaScript против VBScript
- PHP против JavaScript
- C против Java