Throws
När ett undantag kastas kan en metod antingen hantera det med ett try-catch-block eller skicka vidare undantaget till sin anropare. I den här övningen ser du hur man kastar ett undantag i stället för att hantera det med try/catch.
Den här övningen är en del av kursen
Datatyper och undantag i Java
Övningsinstruktioner
- Lägg till ett try-block runt koden som anropar
getScore(3)och skriver ut resultatet. - Lägg till ett catch-block som hanterar
ArrayIndexOutOfBoundsExceptionsom uppstår i metodengetScore(). - Låt
getScore(int)kastaArrayIndexOutOfBoundsExceptioni stället för att hantera undantaget med try/catch.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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];
}
}