Exceções em Java
O tratamento de exceção é o mecanismo responsável pelo tratamento da ocorrência de condições que alteram o fluxo normal da execução de programas de computadores.
Em geral, na ocorrência de uma exceção, o estado do programa é gravado em um local pré-definido e a sua execução é direcionada para uma rotina de tratamento. Dependendo da situação, a rotina de tratamento pode prosseguir a execução a partir do ponto que originou a exceção, utilizando a informação gravada para restaurar o estado. Do ponto de vista do processador, as interrupções de hardware podem ser consideradas como condições análogas às exceções que permitem prosseguimento da execução, apesar destas exceções não serem normalmente relacionadas com o fluxo normal do programa.
Para o desenvolvedor de uma rotina, lançar uma exceção é um modo útil de assinalar que a rotina não deve continuar a execução quando, por exemplo, os argumentos de entrada não são válidos (um denominador igual a zero em uma divisão, por exemplo) ou quando um recurso no qual o programa depende não está disponível (um arquivo não encontrado ou um erro em um disco, por exemplo).
Try e Catch
A cláusula try (tentar) tenta executar um bloco de código.Tudo que estiver dentro do bloco try será executado até que alguma exceção seja lançada, ou seja, até que algo dê errado.
Quando uma exceção é lançada, ela sempre deve ser capturada. O trabalho de captura da exceção é executado pelo bloco catch.
Um bloco try pode possuir vários blocos de catch, dependendo do número de exceções que podem ser lançadas por uma classe ou método.
O bloco catch obtém o erro criando uma instância da exceção. Portanto, a sintaxe do bloco try catch é:
try { // código a ser executado
} catch (ClasseDeExceção instânciaDaExceção) { // tratamento da exceção
}
Throws e Throw
A cláusula throws (jogar para fora) dispara as exceções do tipo Aritméticas ocorridas dentro do método. Ela aparece depois da