Olá, bom dia! Tudo bem, pessoal?
Estava assistindo o curso e me surgiu uma dúvida.
Pelo que o Nico falou, é bem comum vermos linhas de código no projeto tal qual:
ArithmeticException ex = new ArithmeticException();
throw ex;
Tendo em vista que a exceção é criada e "jogada". Poderiamos, então, criar uma classe com funções para lidar com exceções? Daí poderiamos descompartimentalizar as exceções do código, só precisariamos chamar a classe, ou a função que irá lidar com todas as exceções, ao invés de inserir em try/catch.
Por exemplo:
Ao invés de um try/catch ou criar a exceção e rodar no meio da função, chamariamos outra função, da seguinte forma:
/*Na classe MaisExceptions*/
private static void exceptionHandler(){
ArithmeticException ex = new ArithmeticException();
throw ex;
NullPointerException ex2 = new NullPointerException();
throw ex2;
/*
* Ou, talvez:
* throw new ArithmeticException();
* throw new NullPointerException();
*/
}
public static void main(String[] args) {
.
.
.
exceptionHandler();
.
.
.
}
Dessa forma jogaria todos as exceptions na pilha e retornaria