Aktywne Wpisy
IreuN +39
![IreuN - #sosnowiec](https://wykop.pl/cdn/c3201142/1076546efa5aeaf121b65b7a11a52725488fd062fde512d0f5efe9195502189d,w150.jpg)
źródło: temp_file4479700554743394704
Pobierz![wfyokyga](https://wykop.pl/cdn/c0834752/fc1df860267eef9195884874c97a8ce34e2d35ce6b30951b45b2517115b44699,q60.jpg)
wfyokyga +43
Beunos Aires
![wfyokyga - Beunos Aires](https://wykop.pl/cdn/c3201142/fb367d06b91511019cbdac2b078a8f82fbd1ace98f22821f367d0a5d778057a5,w150.jpg)
źródło: temp_file8631431092229834769
PobierzSkopiuj link
Skopiuj linkźródło: temp_file4479700554743394704
Pobierzźródło: temp_file8631431092229834769
PobierzWykop.pl
try - spróbuj coś zrobić
catch - złap wyjątek podczas tych czynności, np. może dzielisz przez 0 a nie chcesz, żeby wszystko się rozsypało
finally - a niezależnie czy się udało zrobić rzeczy w try czy nie. na koniec coś tam zrób
Jezeli kod w bloku try wyrzuci exception to przejdzie do wykonywania bloku catch.
Za to blok finaly wykona sie zawsze na koncu, niezaleznie od wystapienia exceptiona.
Dodatkowo moze byc jeden try i po nim kilka catchy, ktore wykonaja sie jedynie w przypadku okreslonego exceptiona.
try {
Polecenia do wykonania
} catch (SomeException sex) {
Polecenia do wykonywania, gdy poleci wyjątek typu SomeException
} catch (Exception ex) {
Polecenia do wykonania, gdy poleci wyjątek typu Exception, który nie został złapany wyżej
} finally {
Polecenia do wykonania niezależnie czy były wyjątki czy nie
}
Np.
Exception ex
SomeException | OtherException ex
Wyjątki nie są od kontrolowania logiki aplikacji, szczególnie że tworzenie wyjątku jest dość czasochłonne.
Ale są operacje gdzie nie jesteś w stanie sprawdzić wszystkiego,
nie zawsze, np ponizej jesli System.exit() nie wyrzuci SecurityException to finally sie nie wykona NIGDY.
try {
System.out.println("try");
System.exit(0)
}
catch (Exception ex) {
System.out.println("catch");
}
finally {
System.out.println("finally");
}
Skoro zmuszasz aplikacje do wyjścia, no to wychodzi, no co w tym dziwnego.
Nigdy nie rozumiałem wrzucania tego przykładu wszędzie gdzie ktoś pisze o finally...