Quando entro no mão na massa aparece desse jeito:
3) Agora iremos lançar nossa exceção dentro do metodo2(), na classe FluxoComTratamento. Vamos substituir o throw atual pelo seguinte:
throw new MinhaExcecao("deu muito errado"); 4) Também precisamos adicionar o tipo MinhaExcecao dentro do catch na classe FluxoComTratamento:
try { metodo1(); } catch(ArithmeticException | NullPointerException | MinhaExcecao ex) { String msg = ex.getMessage(); System.out.println("Exception " + msg); ex.printStackTrace(); } 4) Agora altera a classe MinhaExcecao para estender a classe Exception (deixando checked):
public class MinhaExcecao extends Exception { //checked
} 5) Na classe FluxoComTratamento, faça que o código volte a compilar e use throws MinhaExcecao no metodo1() e no metodo2():
private static void metodo1() throws MinhaExcecao {
System.out.println("Ini do metodo1");
metodo2();
System.out.println("Fim do metodo1");
}
private static void metodo2() throws MinhaExcecao{
System.out.println("Ini do metodo2");
throw new MinhaExcecao("deu muito errado");
//System.out.println("Fim do metodo2");
}
Tem algo que posso fazer para corrigir isso?