Vyhazování (a přehazování) výjimek
Když metoda vyhodí výjimku, musí ji zpracovat volající metoda. Ta ji může buď zachytit pomocí try/catch, nebo přehodit dál. V tomto cvičení uvidíš, jak volající metoda výjimku přehazuje.
Toto cvičení je součástí kurzu
Datové typy a výjimky v Javě
Pokyny k cvičení
- Zavolej metodu
dineOut()s 9 hosty tak, aby se vyvolala výjimkaException. - Protože metoda
dineOut()výjimku nezpracovává, přehod ji dál. - Protože metoda
splitBill()výjimku nezpracovává, vyhoď výjimkuException.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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();
}
}
}