На Яві виняток це небажана або неочікувана подія, що відбувається під час виконання програми. Коли виникає виняткова ситуація, виконання програми припиняється. Щоб уникнути цих умов завершення, ми можемо використовувати блок try catch у Java. У цій статті ми дізнаємося про Try, catch, throw і throws у Java.
Чому виникає виняток?
Виняток може статися через кілька причин, як-от проблема з мережевим з’єднанням, неправильне введення користувачем, відкриття неіснуючого файлу у вашій програмі тощо
Блоки та ключові слова, що використовуються для обробки винятків
1. спробуйте на Java
The спробувати блок містить набір операторів, де може статися виняток.
try { // statement(s) that might cause exception }> 2. ловити в Java
Блок catch використовується для обробки невизначеної умови блоку try. За блоком try завжди йде блок catch, який обробляє виняток, який виникає у пов’язаному блоці try.
catch { // statement(s) that handle an exception // examples, closing a connection, closing // file, exiting the process after writing // details to a log file. }> 3. кинути Java
Ключове слово throw використовується для передачі управління від блоку try до блоку catch.
Нижче наведено реалізацію вищезазначеного підходу:
Java
// Java program that demonstrates the use of throw> class> ThrowExcep {> >static> void> help()> >{> >try> {> >throw> new> NullPointerException(>'error_unknown'>);> >}> >catch> (NullPointerException e) {> >System.out.println(>'Caught inside help().'>);> >// rethrowing the exception> >throw> e;> >}> >}> >public> static> void> main(String args[])> >{> >try> {> >help();> >}> >catch> (NullPointerException e) {> >System.out.println(> >'Caught in main error name given below:'>);> >System.out.println(e);> >}> >}> }> |
список java порожній
>
>Вихід
Caught inside help(). Caught in main error name given below: java.lang.NullPointerException: error_unknown>
4. кидає в Java
The кидки Ключове слово використовується для обробки винятків без блоку try & catch. Він визначає винятки, які метод може викинути викликаючому, і не обробляє сам себе.
індійська актриса рані мукерджі
Нижче наведено реалізацію вищезазначеного підходу:
Java
// Java program to demonstrate working of throws> class> ThrowsExecp {> >// This method throws an exception> >// to be handled> >// by caller or caller> >// of caller and so on.> >static> void> fun()>throws> IllegalAccessException> >{> >System.out.println('Inside fun(). ');> >throw> new> IllegalAccessException('demo');> >}> >// This is a caller function> >public> static> void> main(String args[])> >{> >try> {> >fun();> >}> >catch> (IllegalAccessException e) {> >System.out.println('caught in main.');> >}> >}> }> |
>
>Вихід
Inside fun(). caught in main.>
5. нарешті в Java
Він виконується після блоку catch. Ми використовуємо його, щоб розмістити якийсь загальний код (який буде виконуватися незалежно від того, виникла виняткова ситуація чи ні), коли є кілька блоків catch.
Нижче наведено приклад виняткової ситуації, створеної системою:
Exception in thread 'main' java.lang.ArithmeticException : divide by zero at ExceptionDemo.main(ExceptionDemo.java:5) ExceptionDemo: The class name main:The method name ExceptionDemo.java:The file name java:5:line number>
Нижче наведено реалізацію вищезазначеного підходу:
Java
// Java program to demonstrate working of try,> // catch and finally> class> Division {> >public> static> void> main(String[] args)> >{> >int> a =>10>, b =>5>, c =>5>, result;> >try> {> >result = a / (b - c);> >System.out.println('result' + result);> >}> >catch> (ArithmeticException e) {> >System.out.println('Exception caught:Division by zero');> >}> >finally> {> >System.out.println('I am in>final> block');> >}> >}> }> |
java, як перетворити рядок на int
>
>Вихід
Exception caught:Division by zero I am in final block>
Поширені запитання щодо Try Block у Java
1. Коли слід використовувати блоки try catch?
Блоки try catch використовуються для уникнення винятків, щоб код не порушувався до повного виконання.
2. Що таке throw і throws у Java?
Кидок використовується для передачі управління від блоку спроб до блоку лову. Тоді як throws використовується для обробки винятків без блоку try & catch. Викиди вказують винятки, які метод може кинути викликаючому, але не обробляє сам себе.
3. Чи можемо ми мати два блоки catch?
Так, ми можемо мати декілька блоків catch із операторами try.