Kom igångKom igång gratis

Kasta (vidare) undantag

När en metod kastar ett undantag måste den anropande metoden hantera det. Det kan antingen ske med try/catch eller genom att kasta undantaget vidare. I den här övningen ser du hur en anropande metod kastar ett undantag vidare.

Den här övningen är en del av kursen

Datatyper och undantag i Java

Visa kurs

Övningsinstruktioner

  • Anropa metoden dineOut() med 9 gäster så att Exception utlöses.
  • Eftersom metoden dineOut() inte hanterar undantaget, kasta det vidare med Exception.
  • Eftersom metoden splitBill() inte hanterar undantaget, kasta vidare Exception.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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();
		}
	}
}
Redigera och kör kod