Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouEdison Avelar Chaplin Alterado mais de 8 anos atrás
1
Tratamento de Exceções
2
Roteiro O que são exceções? Quando usar Capturando Exceções Exemplos
3
O que são exceções? Exceção é uma indicação de um problema que ocorreu durante a execução Exceção significa que este não ocorre frequentemente Tratamento de exceções – É a capacidade de um programa continuar executando, ao invés de fechar, depois da ocorrência de um problema – Robustez – a programas críticos
4
Visão geral do tratamento de erros Programas testam condições para determinar como a execução do programa deve prosseguir Realiza uma tarefa Se a tarefa anterior não tiver sido executada corretamente realize processamento do erro Realize a próxima tarefa Se a tarefa anterior não tiver sido executada corretamente realize processamento do erro....
5
Exemplos Divisão por zero sem Exceção
6
Quando usar Projetados para processar erros síncronos que ocorrem quando uma instrução é executada Exemplos comuns – Índices fora do intervalo de um array – Estouro aritmético – Divisão por zero – Parâmetros inválidos de método – Interrupção de thread – Alocação de memória mal sucedida
7
Quando usar Não são projetados para processar erros assíncronos, que ocorrem paralelamente com o fluxo de controle do programa e independente dele Exemplos comuns – E/S do disco – Chegada de mensagens da rede – Cliques de mouse – Pressionamento de teclas
8
Capturando Exceções Estrutura (try - catch) try {..... } catch (....) {..... }
9
Capturando Exceções Estrutura (try - catch) – O bloco de comando TRY No exemplo as entradas de dados pelo teclado utilizam o scanner.nextInt() Esta por sua vez lança exceções do tipo InputMissMatchException Quando o valor lido não é do tipo inteiro
10
Capturando Exceções Estrutura (try - catch) – O bloco de comando TRY A divisão não ocorre exatamente no bloco try É feita uma chamada ao método quotient E tal método lança uma exceção do tipo ArithmeticException, quando a divisão é feita por zero – O bloco catch Captura e trata as exceções
11
Capturando Exceções Bloco finally – Exceções não capturadas São aquelas que não há blocos catch associados No caso de programação multithread, uma exceção não capturada finalizará apenas a thread que ocorreu a exceção Cláusula throws – Especifica as exceções que o método pode lançar
12
Capturando Exceções
13
Exemplos 2 Divisão por zero com Exceção
14
Exemplos 2 Lançando Exceções
15
Hierarquia de Classes
16
Exemplos 2 Rastreamento de Exceções
17
Exemplos 2 Encadeamento de Exceções
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.