1 / 29

Programação

Programação. Bruno Rafael de Oliveira Rodrigues. Tratadores de Excessões. A exceção é uma indicação de que um erro ou problema aconteceu durante a execução de uma aplicação.

eve-moses
Download Presentation

Programação

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programação Bruno Rafael de Oliveira Rodrigues

  2. Tratadores de Excessões • A exceção é uma indicação de que um erro ou problema aconteceu durante a execução de uma aplicação.

  3. Essas exceções são aplicadas a trechos de código que apresentam um grau maior de possibilidade de que um erro possa vir a acontecer.

  4. Ao invés de um determinado programa ser finalizado, devido a uma falha, e possível realizar o tratamento de tais exceções, buscando manter a execução perfeita do programa, sem prejuízo algum ao usuário

  5. Cláusulas try / catch / finally try{ // escreva as instruções passíveis de gerar uma exceção neste bloco } catch (<tippdaexceção> <nomdavariavel>){ // escreva a ação que o seu programa fará caso ocorra uma exceção de um determinado } finally { // escreva a ação que o seu programa executará caso ocorra ou não um erro ou exceção }

  6. Exceções geradas durante a execução do bloco try podem ser detectadas e tratadas num bloco catch. O código no bloco finally é sempre executado, ocorrendo ou não a exceção.

  7. Sem utilizar exceção

  8. Utilizando a Exceção

  9. Podem existir quantas clausulas catch forem necessárias para o perfeito tratamento da aplicação.

  10. Podem ocorrer situações em que e desejável que sejam realizadas tarefas, mesmo após alguma falha, ou mesmo com o perfeito funcionamento da aplicação. Nesses casos, entra em cena a declaração da clausula finally em que pode ser definido o bloco que ira ser executado.

  11. Exception • Exception possui por sua vez dezenas de subclasses pré-definidas na Plataforma Java, mas uma delas é especial: RuntimeException. Esta exceção indica erros em tempo de execução, resultantes de erros de configuração ou de dados inválidos sendo processados pela aplicação.

  12. ClassCastException • ClassCastException (erro na conversão forçada de tipo) ArithmeticException (cálculos inválidos, como dividor por zero) NullPointerException, IllegalArgumentException, IndexOutOfBoundsExceptione SecurityExceptionsão exemplos de subclasses de RuntimeException.

  13. Principais Exceções

  14. Quando usar exceções O tratamento de exceções deve ser utilizado nas seguintes situações: • processar situações excepcionais nas quais um método seja incapaz de terminar sua função por razoes que fogem a seu controle; • processar exceções de componentes que não estão projetados para realizar tais tarefas diretamente; • em projetos de grande porte, para tratar exceções de maneira uniforme em todo o projeto.

  15. Throws • É a responsável por tratar os possíveis erros que venham a acontecer, porem a clausula throws lista as possíveis exceções que podem ser disparadas

  16. tipoDeRetornonomeDoMetodo() throwsTiposDeExcecao1, TipoDeExcecao2, ... { //corpo do metodo }

  17. Sempre definida para um método completo de uma classe, logo a qualquer momento dentro desse método pode ocorrer uma exceção é então as classes definidas serão executadas

  18. Exemplo publicclassTestaException { public static void main(String[] args) throws FileNotFoundException{ newjava.io.FileInputStream("arquivo.txt"); }

  19. Exceções não Monitoradas • Não exigem tratamento com o uso de diretivas try/catch/finnaly, permitindo seu envio implícito para o contexto superior. • Todas as exceções não monitoradas são subclasses de java.lang.RuntimeException

  20. Exemplo

  21. Exceções Monitoradas • É exigido tratamento obrigatório com try/catch/finally ou a declaração explícita de seu lançamento para contexto superior por meio da cláusula thows.

  22. Exemplo

  23. Tratamento Qualificado de Exceções • Qualquer exceção pode ser tratada de modo genérico por meio de um bloco try/catch que apanhe a classe de exceção Exption. • Mas o controle de exceções pode ser mais sofisticado com o encadeamento de múltiplos blocos catch.

  24. Não Qualificado

  25. Qualificado

  26. Pesquise e estude • Como fazer exceções com herança? • Qual a diferença entre throw e throws? • O que é um stack trace e um printStackTrace? • O que fazem as classes Throwable, Exception e Error?

  27. Sites+ • http://www.hwn.com.br/pej/ -> Livro Think in Java • http://javafree.uol.com.br/index.jf • http://www.guj.com.br/ ->tem um dos maiores forumde Java, cadastra-se e debata também

More Related