Aruncarea (și rearuncarea) excepțiilor
Când o metodă aruncă o excepție, metoda apelantă trebuie să o gestioneze. Poate face asta fie prin try/catch, fie rearuncând excepția. În acest exercițiu, vei vedea cum o metodă apelantă rearuncă o excepție.
Acest exercițiu face parte din cursul
Tipuri de date și excepții în Java
Instrucțiuni pentru exercițiu
- Apelează metoda
dineOut()cu 9 persoane, declanșând astfelException. - Deoarece metoda
dineOut()nu gestionează excepția, reaaruncaException. - Deoarece metoda
splitBill()nu gestionează excepția, aruncă și tuException.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
public class RethrowingExample {
public static void main(String[] args) {
try {
// Trigger the exception by calling dineOut with 9 people
dineOut(____, 50.00);
} catch (Exception e) {
System.out.println("Atempting to divide bill with too many diners");
}
}
// Rethrow the Exception
public static void dineOut(int people, double bill) ____ ____ {
double each = splitBill(bill, people);
System.out.println("Bill for each person: " + each);
}
// Throw the Exception
public static double splitBill(double bill, int people) ____ ____ {
if (people < 3) {
return bill / people;
} else {
throw new Exception();
}
}
}