GoConqr has a new look! Let us know what you think.

Flashcards

Handling exceptions

Thiago Russo C# 70-483 Portuguese 14 cards

Handling exceptions

Cards in this deck (14)

  1. 1O que são exceções?Qdo vc faz suas aplicações, às vezes ocorrem erros. Talvez vc queira escrever um arquivo no disco e o disco está cheio.ou tentar conectar em um BD mas o servidor ñ está disponível ou outra condição inesperada existe.
    Em vez de trabalhar com códigos de erro, o .NET Framework usa exceções para sinalizar erros.
    VC tb pode usar essas exceções para sinalizar erros que acontecem em seus próprios aplicativos e você pode até mesmo criar tipos de exceção personalizados para sinalizar erros específicos.
  2. 2O que é uma Exception no .Net?Uma exceção é um objeto, que contém dados sobre o erro que aconteceu. Ele ñ só tem uma mensagem amigável para o usuário, mas tb contém o local em q o erro aconteceu e pode até armazenar dados adicionais, como um endereço p/ uma página que oferece alguma ajuda.
  3. 3Exemplo de exceptionExemplo de exception
  4. 4Handling exceptionHandling exception
  5. 5Catching Diferent Exception TypesCatching Diferent Exception Types
  6. 6pode ter catch vazio? Sem uma Exception?Em C#1, vc tb podia usar um bloco catch sem um tipo de Exception.
    Isto poderia ser usado p/ capturar exceções q foram lançadas de outras linguagens como C++ q não herdam de System.Exception (em C ++ você pode lançar exceções de qualquer tipo).
    Hoje em dia, cada exceção que não herda de System.Exception é empacotada automaticamente em um System.Runtime.CompilerServices.RuntimeWrappedException. Dado q esta exceção herda de System.Exception, ñ há necessidade p/ bloco catch vazio mais.
  7. 7bloco finallyÉ importante certificar-se de q a app está no estado correto ao final do bloco catch. Pode ser preciso reverter as alterações que o bloco try realizou antes da exceção ser lançada.
    O bloco finally será executado se uma exceção acontece ou não
  8. 8exemplo de bloco finallyexemplo de bloco finally
  9. 9e se não quisermos passar pelo finally e ao invés disso, quisermos encerrar a app?Environment.FailFast:
    pode ter uma situação em que encerrar o aplicativo é mais seguro do que executar blocos finally.
    Este método tem duas sobrecargas diferentes, um que recebe uma string e um outro que recebe uma exceção. Quando este método é chamado, a mensagem (e, opcionalmente, a exceção) são gravados no log de eventos do aplicativo do Windows, e o aplicativo é encerrado
  10. 10exemplo de Environment.FailFastexemplo de Environment.FailFast
  11. 11Inspect Exception exemploInspect Exception exemplo
  12. 12Inspect Exception detalhe das variáveisInspect Exception detalhe das variáveis
  13. 13Cuidado com o código do bloco finallyÉ importante certificar-se de que o seu bloco finally não causa quaisquer exceções. Qdoisso acontece, o controle imediatamente deixa o bloco finally e se move para o próximo bloco try externo, se houver. A exceção original é perdida e você não pode acessá-lo mais.
  14. 14qdo usar try..catch? boas práticasVc só deve capturar uma exceção qdo pode resolver o problema ou qdo quiser registrar o erro.
    É importante evitar blocos catch gerais nas camadas mais baixas da sua aplicação.
    Vc pode acidentalmente engolir uma exceção importante, mesmo sem saber que isso aconteceu.
    Logging tb deve ser feito em algum lugar mais acima na sua aplicação. Assim, vv pode evitar erros de registro duplicados em várias camadas em sua aplicação.

Information

Description
70-483 C# (Exame 70-483) Flashcards on Handling exceptions, created by Thiago Russo on 23/04/2016.
Created by
Thiago Russo
Views
10
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?