1 Que classe fica no topo da hierarquia de exceções?
2 Explique resumidamente como try e catch são usados.
3 O que está errado neste fragmento?
// ...
vals[18] = 10;
catch (ArrayIndexOutOfBoundsException exc) {
// trata erro
}
4 O que acontece quando uma exceção não é capturada?
5 O que está errado no fragmento seguinte?
class A extends Exception { ...
class B extends A { ...
// ...
try {
// ...
}
catch (A exc) { ... }
catch (B exc) { ... }
6 Um catch interno pode relançar uma exceção para um catch externo?
7 O bloco finally é a última parte do código executada antes de o programa terminar. Isso é verdadeiro ou falso? Explique sua resposta.
8 Que tipo de exceções deve ser declarado explicitamente na cláusula throws de um método?
9 O que está errado neste fragmento?
class MyClass { // ... }
// ...
throw new MyClass();
10 Na Questão 3 do Teste do Capítulo 6, você criou uma classe Stack. Adicione exceções personalizadas à sua classe que relatem condições de pilha cheia e pilha vazia.
11 Quais são as três maneiras pelas quais uma exceção pode ser gerada?
12 Quais são as duas subclasses diretas de Throwable?
13 O que é o recurso multi-catch?
14 Normalmente, um código deve capturar exceções de tipo Error?