IniziaInizia gratis

(Ri)Lancio

Quando un metodo lancia un'eccezione, il metodo chiamante deve gestirla. Per gestirla, può usare try/catch oppure rilanciarla. In questo esercizio vedrai come un metodo chiamante rilancia un'eccezione.

Questo esercizio fa parte del corso

Tipi di dati ed eccezioni in Java

Visualizza il corso

Istruzioni dell'esercizio

  • Chiama il metodo dineOut() con 9 persone per innescare l'Exception.
  • Poiché il metodo dineOut() non gestisce l'eccezione, rilancia l'Exception.
  • Poiché il metodo splitBill() non gestisce l'eccezione, lancia l'Exception.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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();
		}
	}
}
Modifica ed esegui il codice