Escolar Documentos
Profissional Documentos
Cultura Documentos
> Exeção;
> try, cath;
> Ex:
0, 1, 2, 3;
System.out.println("Antes da exception"):
try{
catch(TipoDaException exception){
//tratamento do erro;
Exeções também são objetos;
> Tente executar esse código e caso ocorra um erro capture a exeção e trate o erro;
try{
System.out.println("Antes da exception"):
vetor[4] = 1;
}catch(ArrayIndexOutOfBoundsException exception){
>>>>>> Não tratar erros fazem a execução do programa terminar!!Não tratar não é uma
boa prática;
>>>>>> Tratar erros:
- Permitem que o programa execute uma determinada lógica caso o erro ocorra;
- Permitem que o programa continue a execução;
> Podemos ter vários catch um atrás do outro, precisa estar em baixo de um
catch existente;
- Ex:
try
{
}catch(ArithmeticException e1){
catch(ArrayIndexOutOfBoundsException exception)
{
System.out.println("Posição de Array inválida!!");
}
> Usando a superclasse (Throwable) de erros e exeções, porém não é uma boa
prática...
> Ex:
try
{
}catch(ArithmeticException e1){
catch(Throwable exception)
{
System.out.println("Ocorreu um erro!!");
}
try
{
> Ex:
try
{
}catch(ArithmeticException e1){
catch(ArrayIndexOutOfBoundsException exception)
{
System.out.println("Posição de Array inválida!!");
}
finally {
try
{
}catch(ArithmeticException e1){
catch(Throwable exception)
{
System.out.println("Ocorreu um erro!!");
System.exit(0);
}
finally{
> printStackTrace() >>>> Imprime o stack trace do erro >>>> Mostra em qual linha o
erro aconteceu;
- Ex:
catch(Exception exc)
{
System.out.println(exc.getMessage());
exc.printStrackTrace();
>>>>>>> THROWS
- Ex:
try{
}
catch(Exception e)
{
System.out.println("Entrada inválida");
e.printStackTrace(); >>>>>>> Não devo deixar isso disponível para o usuário; Só usa
isso para nível de log
}
> UNCHECKED:
- Não verificadas: acontecem em tempo de execução do programa: RuntimeException;
não tem como o compilador prever isso; Só depois que ele ter as informações em
tempo de execução;
- NullPointerException >>> Tenta chamar um método de um objeto que não foi
instanciado;
- ClassCastException >>> Cast;
> CHECKED:
- Verficadas: IOException >>> Leitura ou escrita de arquivos;
- SQLExpetion
- O compilador vai pedir para tratar elas já no programa;
> Ex:
>>> Exeção para dar só resultado inteiro;
>>> Sempre que um número for ímpar vou lançar a minha exeção;
try
{
if(numeros[i] % 2 != 0)
{
//lançar a expetion aqui
}
System.out.println(numeros[i] + "/" + deno[i] + "=" + (numeros[i]/deno[i]));
}
catch(Exception e)
{
System.out.print("Aconteceu um erro!");
System.out.print(getMessage());
@Override
public String toString()
{
return "Resultado de " + num + "/" + dem + "não é um inteiro";
try
{
if(numeros[i] % 2 != 0)
{
//lançar a expetion aqui
}
System.out.println(numeros[i] + "/" + deno[i] + "=" + (numeros[i]/deno[i]));
}
catch(Exception e)
{
System.out.print("Aconteceu um erro!");
System.out.print(getMessage());
http://www.slideshare.net/loianeg/curso-java-basico-exercicios-aulas-47-a-52
>>>>>>>>>>>>>>>> ACESSO A ARQUIVOS <<<<<<<<<<<<<<<<<,
- Banco de dados;
- Armazenamento local;
- Ler um arquivo que configure nosso sistema;
- Criar um arquivo para trocar info com outros sistemas;