Throws
Když dojde k výjimce, metoda ji může buď ošetřit pomocí try-catch, nebo ji předat svému volajícímu pomocí throws – tedy přenést odpovědnost dál. V tomto cvičení si ukážeme, jak výjimku vyhodit místo toho, aby ji metoda zpracovávala sama.
Toto cvičení je součástí kurzu
Datové typy a výjimky v Javě
Pokyny k cvičení
- Obal kód volající
getScore(3)a jeho výpis blokemtry. - Přidej blok
catch, který zachytí výjimkuArrayIndexOutOfBoundsExceptionvzniklou uvnitř metodygetScore(). - Uprav metodu
getScore(int)tak, aby výjimkuArrayIndexOutOfBoundsExceptionvyhazovala pomocíthrows, místo aby ji ošetřovala blokem try/catch.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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];
}
}