Exception
na Linguagem Java
O que é uma Exception ?
Em Java, a classe de Exceção define condições de erro moderados que
seus programas podem encontrar. Em vez de você deixar o programa terminar, você
pode escrever um código para tratar as exceções e continuar a execução do
programa.
A linguagem Java implementa C++ nomeando exceções para poder construir
um código elástico. Quando um erro acontece em seu programa, o código que
acha o erro pode “disparar” uma exceção. Dispara uma exceção é o
processo de sinalizar o processo corrente atual de que um erro aconteceu. Você
enlata a captura da exceção e quando possível recupera a condução das próximas
rotinas.
Manipulação de Exceptions
Declarações try e catch
Uma maneira de manipular possíveis erros, é usando as declarações try
e catch. A declaração try indica a parte do código aonde poderá ocorrer uma
exception, sendo que para isso você deverá delimitar esta parte do código com
o uso de chaves. Na declaração catch você coloca o código a ser executado
caso venha a ocorre uma exception.
try {
// código que pode ocasionar uma exception
}
catch{
// tratamento do erro
}
Declaração finally
A declaração finally é utilizada para definir o bloco que irá ser
executado tendo ou não uma exception, isto após o uso da declaração de try e
catch.
try {
// código que pode ocasionar uma exception
}
catch{
// tratamento do erro
}
finally {
// código
}
Exceptions mais comuns
ArithmeticException - int i = 12 / 0
NullPointerException - ocorre quando utilizo um objeto que não
foi instanciado.
NegativeArraySizeException - ocorre quando é atribuido um valor
nulo para um array.
ArrayIndexOutOfBoundsException - ocorre quando tento acessar um
elemento do array que não existe.
Categorias de Exceptions
Há três grandes categorias de exceções em Java. De fato, a classe
Java.lang.Throwable age como uma classe pai , para que todos os objetos
disparados possam ser pegos nas exceptions.
Deve-se evitar usar a classe Throwable, procure usar uma das três
classes descritas à seguir:
* Erro - indica um problema sério de recuperação difícil, se não
impossível;
* RuntimeException - problema ocorrido durante a implementação;
* Outra exceção - indica uma dificuldade durante a implementação que
pode acontecer razoavelmente por causa de efeitos ambientais e pode se
manipulado.
Declare ou Manipule a sua Exception
Na construção de um código em Java, o programador deve prever métodos
para tratar possíveis erros. Existem duas maneiras de o programador satisfazer
esta exigência. A primeira é com o uso da declaração try e catch, como foi
visto anteriormente, e a segunda maneira é indicando que a exceção não é
dirigida para este método, sendo então jogado para o método chamador.
public void troublesome( ) throws IOException
Exercícios
class
Prog0601
{
public static void main (String args[ ])
{
int i = 0;
int scap = 0;
String greetings [ ] = { “Hello word” , “No, I mean it!”, “HELLO WORLD!”};
While (i < 4)
{
try
{
System.out.println(greetings[i]);
}
catch(ArrayIndexOutOfBoundsException e)
{
scap++;
System.out.println(“Valor do Índice foi refixado ” + scap);
if (scap < 5)
{
i = -1;
}
}
catch(Exception e)
{
System.out.println(e.toString());
}
finally
{
System.out.println(“Esta mensagem será sempre impressa.”);
}
i++;
}
}
}