LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS TRATAMENTO DE EXCEÇÕES Prof. Thiago Pereira Rique...

Preview:

Citation preview

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 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.

Recommended