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
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'
ArrayIndexOutOfBoundsExceptioncausata nel metodogetScore(). - Fai in modo che
getScore(int)lanciArrayIndexOutOfBoundsExceptioninvece 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];
}
}