TEMA 4. POO EXCEPTII JAVA. TRATAREA EXCEPTIILOR | Page 2
Obiective
înţelegeţi conceptul de excepţie şi utilitatea folosirii excepţiilor pentru a asigura
robusteţea programelor;
lansaţi o excepţie prin instrucţiunea throw şi să trataţi o excepţie prin construcţia
try;
scrieţi programe ce tratează excepţii
Consideratii generale
Există excepții în viața tuturor. Fiecare dintre noi se confruntă cu situații când a
greșit și trebuie să se descurce.În programare se poate preveni aceste situații
neplăcute. Pentru aceasta, a fost introdus conceptul de excepții și erori (din engleză
- Exception).
Cu alte cuvinte, limbajul de programare Java descrie toate opțiunile posibile pentru
excepții pe care programul dvs. le poate arunca!
Există2 tipuri de erori:
1. CHECKED (din engl.- verificate)- erori pe care le putem preveni. Pentru
aceste erori trebuie să prescriem cu siguranță un fel de soluție, dacă ceva
nu va merge corect.
2. UNCHECKED - erori neprevăzute (din engl.- necunoscite).
Excepţia semnalează faptul că a intervenit o anumită condiţie specială (nedorită);
spunem că segmentul de cod care a detectat condiţia lansează o excepţie de tipul
corespunzător. Lansarea unei excepţii atrage după sine captarea ei de către un
handler de excepţie; în lipsa acestuia, programul se va încheia cu un mesaj de
eroare.[1]
O excepţie poate fi o eroare, dar şi orice situaţie pentru care vrem să întreprindem
acţiuni specifice. Pentru situaţiile în care consideră că este vorba de o eroare, Java
lansează automat o excepţie care, dacă nu este captată de un handler de eroare,
conduce la tipărirea unui mesaj, după care programul se termină; este însă posibil
să captăm excepţia şi să întreprindem
ce acţiune dorim.
Deoarece Java este un limbaj de programare orientat pe obiecte, fiecare Excepție e
este în fapt o instanţă a unei clase derivate din clasa java.lang.Exception. Rezultă
că o excepţie este un obiect, care are câmpurile sale, constructorii săi şi metodele
sale.
Pentru situaţiile în care consideră că este vorba de o eroare, Java lansează automat
o excepţie care, dacă nu este captată de un handler de eroare, conduce la tipărirea
unui mesaj, după care programul se termină; este însă posibil să captăm excepţia şi
să întreprindem ce acţiune dorim. .[1]
În esenţă, o excepţie este un eveniment care se produce în timpul execuţiei unui
program şi care perturbă fluxul normal al instrucţiunilor acestuia.
De exemplu, în cadrul unui program care copiază un fişier, astfel de evenimente
excepţionale pot fi. [4]:
absenţa fişierului pe care vrem să-l copiem
imposibilitatea de a-l citi din cauza permisiunilor insuficiente