IniziaInizia gratis

Throws

Quando un'eccezione viene lanciata, un metodo può scegliere di gestirla con try-catch oppure rilanciarla al chiamante (scaricando la responsabilità). In questo esercizio, vedrai come lanciare un'eccezione invece di gestirla con try/catch.

Questo esercizio fa parte del corso

Tipi di dati ed eccezioni in Java

Visualizza il corso

Istruzioni dell'esercizio

  • Aggiungi un blocco try intorno al codice che chiama getScore(3) e stampane il risultato.
  • Aggiungi un blocco catch per gestire l'ArrayIndexOutOfBoundsException causata nel metodo getScore().
  • Fai in modo che getScore(int) lanci ArrayIndexOutOfBoundsException invece di usare try/catch per gestire l'eccezione.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

package exceptions;

public class ThrowingExample {

	public static int[] scores = { 75, 97, 83 };

	public static void main(String[] args) {
		// Add a try block
		____ {
			int lastScore = getScore(3);
			System.out.println("Last score:" + lastScore);
		// Catch the exception thrown by getScore(int)
		} ____ (____ e) {
			System.out.println("Tried to access non-existent score");
		}
	}

	// Throw ArrayIndexOutOfBoundsException
	public static int getScore(int index) ____ ____ {
		return scores[index];
	}
}
Modifica ed esegui il codice