Začněte nyníZačněte zdarma

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ě

Zobrazit kurz

Pokyny k cvičení

  • Obal kód volající getScore(3) a jeho výpis blokem try.
  • Přidej blok catch, který zachytí výjimku ArrayIndexOutOfBoundsException vzniklou uvnitř metody getScore().
  • Uprav metodu getScore(int) tak, aby výjimku ArrayIndexOutOfBoundsException vyhazovala 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];
	}
}
Upravit a spustit kód