Java · Intermediário · Inglês · Técnico
multi-catch
Forma de catch que trata vários tipos de exceção no mesmo bloco, separados por barra vertical, como catch (IOException | SQLException e).
Onde usar
Aparece para evitar blocos catch repetidos quando o tratamento é igual para tipos diferentes.
Em código
try {
executar();
} catch (IOException | SQLException e) {
log.warn("falha de I/O ou SQL", e);
}Exemplos
Use a multi-catch since both errors are handled the same way.
Use um multi-catch, já que os dois erros são tratados do mesmo jeito.
It won't compile: one of the types is a subclass of the other.
Não compila: um dos tipos é subclasse do outro.
Cuidado
Os tipos não podem ter relação de herança entre si, senão não compila; e a variável e é implicitamente final.