Documente Academic
Documente Profesional
Documente Cultură
Acest lucru nu este ceva ce ați dori să i se întâmple unui utilizator care
folosește aplicația dvs. Deși mesajele de eroare care există în cadrul
excepțiilor sunt utile în timpul fazei de dezvoltare a aplicației, astfel de
scenarii sunt inacceptabile în aplicația finală. Acesta este motivul
pentru care utilizăm tehnica denumită ”captarea excepției" (exception
catching).
Gestionarea excepțiilor
try {
nums[7] = 10;
}
catch (Exception exc) {
System.out.println("Index out-of-bounds!");
}
}
Index out-of-bounds!
try {
nums[7] = 10;
}
catch (ArrayIndexOutOfBoundsException exc) {
System.out.println("Index out-of-bounds!");
}
}
try {
double variable = 5/0;
nums[7] = 10;
}
catch (ArrayIndexOutOfBoundsException exc) {
System.out.println("Index out-of-bounds!");
}
}
try {
double variable = 5 / 0;
nums[7] = 10;
}
catch (ArrayIndexOutOfBoundsException | ArithmeticException e) {
System.out.println(e);
}
catch (Exception e) {
System.out.println(e);
}
}
În exemplul de mai sus putem vedea cum se pot capta mai multe
excepții în cadrul unui singur bloc catch, cu ajutorul caracterului "|“.
Regula este ca excepțiile să fie captate de la specifice la cele globale,
motiv pentru care avem un bloc ce captează o excepție generală la
finalul listei. Acesta va fi activat în cazul în care excepția nu aparține
niciunui grup de excepții specializate.
try {
double variable = 5 / 0;
nums[7] = 10;
}
catch (ArrayIndexOutOfBoundsException | ArithmeticException e) {
System.out.println(e);
}
catch (Exception e) {
System.out.println(e);
}
finally {
System.out.println("Leaving try.");
}
}
try {
if (fs != null) {
fs.close();
}
} catch (IOException ex) {
System.out.println(ex);
}
}
}
throw someThrowableObject;
myjavaprogram.ToBigNumber
@Override
public String getMessage() {
return "The number is to big!";
}
}
}