(Повторне) кидання
Коли метод кидає виняток, метод, що його викликає, має обробити цей виняток. Для цього можна перехопити його через try/catch або прокинути далі. У цій вправі ви побачите, як метод-«дзвонячий» прокидає виняток далі.
Ця вправа є частиною курсу
Типи даних і винятки в Java
Інструкції до вправи
- Викличте метод
dineOut()із 9 людьми, щоб спрацювавException. - Оскільки метод
dineOut()не обробляє виняток, прокиньтеExceptionдалі. - Оскільки метод
splitBill()не обробляє виняток, додайте киданняException.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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();
}
}
}