LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS TRATAMENTO DE EXCEÇÕES Prof. Thiago Pereira Rique thiagorique2011@gmail.com http://thiagorique.wordpress.com/
Agenda Introdução Exemplo de divisão por zero sem tratamento de exceções Exemplo de tratamento de ArithmeticExceptions e InputMismatchExceptions Bloco finally Exemplos de exceções Mecanismos de exceções Criando suas próprias classes de exceções Criando suas próprias classes de exceções – estendendo o exemplo
INTRODUÇÃO Tratamento de exceções Programas robustos e tolerantes a falhas Classes que estendem Throwable
EXEMPLO DE DIVISÃO POR ZERO SEM TRATAMENTO DE EXCEÇÕES
EXEMPLO DE DIVISÃO POR ZERO SEM TRATAMENTO DE EXCEÇÕES
EXEMPLO DE DIVISÃO POR ZERO SEM TRATAMENTO DE EXCEÇÕES
EXEMPLO DE DIVISÃO POR ZERO SEM TRATAMENTO DE EXCEÇÕES
EXEMPLO DE DIVISÃO POR ZERO SEM TRATAMENTO DE EXCEÇÕES
Exemplo de tratamento de ArithmeticExceptions e InputMismatchExceptions
Exemplo de tratamento de ArithmeticExceptions e InputMismatchExceptions
Exemplo de tratamento de ArithmeticExceptions e InputMismatchExceptions
Exemplo de tratamento de ArithmeticExceptions e InputMismatchExceptions
Bloco finally Opcional
Bloco finally finally é executado finally não é executado Se exceção for lançada no try correspondente. Se o bloco try terminar (return, break ou continue). Alcançando chave de fechamento do try. finally não é executado System.exit Liberação de recursos
EXEMPLOS DE EXCEÇÕES Acesso a um array fora dos limites; Divisão por zero; Incompatibilidade de tipos; Esgotamento de memória; Saldo insuficiente para realizar um saque; Conta não encontrada.
MECANISMOS DE EXCEÇÕES Ao invés de códigos, exceções! Exceções são objetos de classes que estedem (extends) a superclasse Exception. Subclasses de Exception são definidas para Fornecer informações sobre o problema/falha/erro. Diferenciar os possíveis tipos de falha que podem ocorrer.
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO A classe SaldoInsuficienteException
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO A classe Conta_Bancaria
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO A classe Testa_Conta_Bancaria
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO A classe Testa_Conta_Bancaria
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe SaldoInsuficienteException
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe ContaNaoEncontradaException
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe ContaBancaria
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe ContaBancaria
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Interface RepositorioDeContas
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe RepositorioDeContasArray
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe RepositorioDeContasArray
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe Banco
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe TestaContaBancaria
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe TestaContaBancaria
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe TestaContaBancaria
CRIANDO SUAS PRÓPRIAS CLASSES DE EXCEÇÃO – ESTENDENDO O EXEMPLO Classe TestaContaBancaria
REFERÊNCIA DEITEL, H.M; Java Como Programar. Ed. Pearson, 8ª ed, 2010.