logo

Java Zkuste Catch Block

V Javě výjimka je nechtěná nebo neočekávaná událost, která nastane během provádění programu. Pokud dojde k výjimce, provádění programu se ukončí. Abychom se vyhnuli těmto podmínkám ukončení, můžeme použít try catch block v Javě. V tomto článku se dozvíme o Try, catch, throw a throws v Javě.

Proč dochází k výjimce?

Výjimka může nastat z několika důvodů, jako je problém s připojením k síti, chybný vstup poskytnutý uživatelem, otevření neexistujícího souboru ve vašem programu atd.

Bloky a klíčová slova používaná pro zpracování výjimek

1. zkuste v Javě

The Snaž se blok obsahuje sadu příkazů, kde může dojít k výjimce.



try {  // statement(s) that might cause exception }>

2. chytit v Javě

Blok catch se používá ke zpracování nejistých podmínek bloku try. Po bloku try vždy následuje blok catch, který zpracovává výjimku vyskytující se v souvisejícím bloku 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. hodit do Javy

Klíčové slovo throw se používá k přenosu řízení z bloku try do bloku catch.

Níže je uvedena implementace výše uvedeného přístupu:

Jáva




// 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);> >}> >}> }>

"jaký je rozdíl mezi lvem a tygrem"
>

>

Výstup

převést strin na int
Caught inside help(). Caught in main error name given below: java.lang.NullPointerException: error_unknown>

4. hází v Javě

The hází klíčové slovo se používá pro zpracování výjimek bez bloku try & catch. Určuje výjimky, které může metoda vyvolat volajícímu a nezpracovává sama sebe.

Níže je uvedena implementace výše uvedeného přístupu:

Jáva




// 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.');> >}> >}> }>

>

>

Výstup

Inside fun(). caught in main.>

5. konečně na Javě

Provádí se po bloku catch. Používáme to k vložení nějakého společného kódu (který se má provést bez ohledu na to, zda došlo k výjimce nebo ne), když existuje více bloků catch.

Příklad výjimky generované systémem je uveden níže:

ruční testování
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>

Níže je uvedena implementace výše uvedeného přístupu:

Jáva




// 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');> >}> >}> }>

>

>

Výstup

Exception caught:Division by zero I am in final block>

Časté dotazy pro Try Block v Javě

1. Kdy byste měli použít bloky try catch?

Bloky Try catch se používají k zamezení výjimek, aby se kód nezlomil před úplným spuštěním.

2. Co je throw a throws v Javě?

Hod se používá pro přenos kontroly z bloku try na blok catch. Zatímco throws se používá pro zpracování výjimek bez bloku try & catch. Throws určují výjimky, které může metoda vyvolat volajícímu a nezpracovává sama sebe.

3. Můžeme mít dva bloky úlovků?

Ano, s příkazy try můžeme mít více bloků catch.