1 Java: Tratamento de Exceções Alcides Calsavara.

Slides:



Advertisements
Apresentações semelhantes
JAVA Orientação a Objetos
Advertisements

Programação em Java Prof. Maurício Braga
Soluções Iterativas com Laços
Programação Orientada a Objetos*
Programação em Java Prof. Maurício Braga
Java Básico Arrays Marco Antonio, Arquiteto de Software – TJDF Atualizado: Fevereiro/2009.
Métodos, Parâmetros, Argumentos e Contratos
Shop Notas de implementação [Exercício da Disciplina de ADAV]
Capítulo 1 Introdução.
Tratamento de Exceções
Aula Teste INFNET terça-feira, 11 de janeiro de 2011
Excepções Algoritmos e Tipos Abstractos de Informação (ATAI)
Projeto de Sistemas de Software
Java RMI Alcides Calsavara. Objetivos Permitir que um método de uma classe Java em execução em uma máquina virtual JVM chame um método de um objeto (instância.
Orientação a Objetos: Modificador Final para Métodos e Classes
Modelagem de Software Orientado a Objetos utilizando a Linguagem UML
Recursividade Inhaúma Neves Ferraz
Filas circulares.
Ronaldo Celso Messias Correia
Membros estáticos.
Orientação a Objetos Classes
9 Controle de fluxo Seqüenciadores. Jumps. Escapes. Exceções.
Treinamento no GRADEp HelloWorld Args. Slide 2 Rede Nacional de Ensino e Pesquisa Treinamento em Gradep - julho 2005 HelloWorld e Args Autoria Autora.
Slide 1 Rede Nacional de Ensino e Pesquisa Treinamento em Gradep - junho 2005 Serviço Collector Treinamento no GRADEp Serviço Collector CollectorDemo e.
Classes Internas e Anônimas
Templates e Questões de Design Programas são geralmente construídos segundo um design que é relativamente bem mapeado nos mecanismos oferecidos pela linguagem.
Objetos Distribuídos - Programação Distribuída Orientado a Objetos Luiz Affonso Guedes.
Programação Concorrente com Thread Java
JAVA ENUMS © 2009 by Jorge L. de Souza Leão março de 2009 PEE - COPPE/UFRJ.
Excepções e Streams em Java
Estrutura de Dados em Java
Usando Java no Oracle Por Edson Almeida Junior
Linguagens de Programação
Threads: Introdução e Implementação
Tipos Agregados Homogêneos e Listas
Programação Orientada a Objetos com Java
Threads, Gerenciamento de Threads Pool de Threads, Grupo de Threads Variáveis Locais à Threads.
JAVA MULTITHREADING TECHNIQUES
Anália Lima (alc5) Bruno Gentilini (bgda) Eduardo Souza (efs) Ivan França (ilfn) Infra-Estrutura de comunicação Aula Prática Programação de Sockets TCP.
Infra-Estrutura de Comunicação (IF678) Aula Prática 02 – CIn/UFPE Davi Duarte Cynthia Raphaella Ivan França Jéssica Barbalho Larissa Paz Paulo Fernando.
Ismael H. F. Santos - - Petrobras/CENPES 1December 2008 Module IV – Exception Handling Prof. Ismael H F Santos.
JAVA Linguagem Ambiente de Desenvolvimento
Java em Redes de Computadores
OPERADORESOPERADORES SCJP – Otimize-TI. Operadores Java Resultado: Maioria das operações é um booleano ou numérico. Não podem ser sobrecarregados (Existem.
Análise Sintática – Parte 1
AspectJ — Programação orientada a aspectos em Java Sérgio Soares e Paulo Borba Centro de Informática Universidade Federal de Pernambuco.
Scala Bruno Barros e Rebeka Gomes
1 Mobilidade de Código com μcode Projeto Giga Alexandre Lages
Capítulo 2. Generics  Novo recurso de linguagem surgida a partir da versão 5  Permite a utilização de tipos parametrizados por classes e métodos tornando-os.
Capítulo 6 Exceções.
Aula 3 Igor Ebrahim (ies) if669 - Introdução à Programação Monitoria de IP.
1.
Orientação a Objetos e Java Graduação em Ciência da Computação
Java Generics Adeline de Sousa Silva.
Capítulo 1. static import  A importação estática pode ser utilizado quando queremos acessar métodos ou atributos estáticos de uma outra classe.  Através.
Tipos Especiais de Listas
Linguagem II Exceções.
Paradigmas da Programação – Semestre 1 – Aula 10 Professor: Eduardo Mantovani )
Listas Simplesmente Encadeadas
Wagner Santos C. de Jesus
Tratamento de Exceções
Polimorfismo.
Capítulo 6 Exceções.
Estrutura de Controle em JAVA
Exceções Suzana Fragoso (smpf) Adaptado do material de Guilherme Carvalho (gvc)
Exceções Profa. Patrícia A. Jaques Alterada por Leandro Tonietto abr-15.
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
M ÉTODOS DA C LASSE S TRING. FUNÇÕES COM STRING Uma string é um tipo texto que corresponde à união de um conjunto de caracteres. Em Java, as strings são.
Aula Prática 5 05/05/2010. //Estrutura do método public int subtrair (int a, int b){ //Calcule a operação desejada. int resultado = a – b; //Retorne o.
Transcrição da apresentação:

1 Java: Tratamento de Exceções Alcides Calsavara

2 Definição u Exceções são acontencimentos fora do comportamento normal ou desejado para um programa. O gerenciamento de exeções permite o controle sobre erros e possivelmente uma solução de contorno. u Exemplos: entrada em formato inválido, arquivo corrompido, conexão de rede não disponível, índice inválido para vetor,...

3 Exemplo de código frágil class TestNullP {static String s = null; public static void main(String args[ ]) { char c1 = s.charAt(2); // java.lang.NullPointerException (programa pára) s = new String("Curitiba"); char c2 = s.charAt(2); // c2 = 'r' char c3 = s.charAt(8); // java.lang.StringIndexOutOfBoundsException (programa pára) } } // fim

4 Exemplo modificado com ifs class TestNullP {static String s = null; public static void main(String args[ ]) { if (s != null && s.length( ) > 2) char c1 = s.charAt(2); s = new String("Curitiba"); if (s != null && s.length( ) > 2) char c2 = s.charAt(2); // c2 = 'r' if (s != null && s.length( ) > 8) char c3 = s.charAt(8); } } // fim

5 Exemplo modificado com tratamento de exceções class TestNullP {static String s = null; public static void main(String args[]) { try { char c1 = s.charAt(2); } catch (Exception e) { System.out.println("Exceção " + e); // Exceção: java.lang.NullPointerException }// continua

6 Exemplo modificado com tratamento de exceções (cont.) s = new String("Curitiba"); try { char c2 = s.charAt(2); // c2 = 'r' } catch (Exception e) { System.out.println("Exceção " + e); } // continua

7 Exemplo modificado com tratamento de exceções (cont.) try { char c3 = s.charAt(8); } catch (Exception e) { System.out.println("Exceção " + e); // Exceção: java.lang.StringIndexOutOfBoundsException } } // fim

8 Hierarquia de exceções...

9 Tratando exceções não relacionadas por herança class TestNullP {static String s = null; public static void main(String args[ ]) { try { char c1 = s.charAt(2); } catch (Exception e) {System.out.println("Exceção " + e); } catch (Error e) {System.out.println("Erro " + e); } } // fim

10 A cláusula finally class TestNullP {static String s = null; public static void main(String args[ ]) { try { char c1 = s.charAt(2); } catch (Exception e) { System.out.println("Exceção " + e); } catch (Error e) { System.out.println("Erro " + e); } finally { System.out.println("Adios, amigos"); } // executado sempre }

11 A cláusula throws class TestNullP {static String s = null; static void work( ) throws Throwable { try { char c1 = s.charAt(2); } catch (Exception e) { System.out.println("Exceção"); throw(e); } catch (Error e) { System.out.println("Erro"); throw(e); } finally { System.out.println("Adios, amigos");} }// continua

12 A cláusula throws (cont.) public static void main(String args[ ]) { try { work( ); } catch(Throwable t) { System.out.println("Erro ou Exceção " + t); } finally { System.out.println("Adios, amigos II");} } } // fim

13 Definindo suas próprias exceções class ProblemaEmWork extends Exception { public ProblemaEmWork( ) { } public ProblemaEmWork(String msg) { super(msg); } } // continua

14 Definindo suas próprias exceções (cont.) class TestNullP {static String s = null; static void work( ) throws ProblemaEmWork { try { char c1 = s.charAt(2); } catch (Exception e) { throw(new ProblemaEmWork("Exceção em work " + e)); } catch (Error e) { throw(new ProblemaEmWork("Erro em work " + e)); } finally { System.out.println("Adios, amigos");} }// continua

15 Definindo suas próprias exceções (cont.) public static void main(String args[ ]) { try { work(); } catch(ProblemaEmWork p) { System.out.println(p); } finally { System.out.println("Adios, amigos II");} } } // fim