Tratamento de Exceções em C#

Classificado em Computação

Escrito em em português com um tamanho de 2,39 KB.

Exceções

Representa a ocorrência de uma situação anormal durante a execução de um programa. Quando ativada, aborta a execução normal do programa até existir forma de a tratar e termina a execução de todo o programa. No C# as situações excecionais ou de erro são tratadas pelo mecanismo de tratamento de exceções.

Que situações excecionais ou de erro deve ter o programador em conta?

O programador deve ter em conta possíveis situações excecionais ou de erro como:

  • Escrita em ficheiro (Esgotar-se espaço em disco)
  • Acesso a um site remoto (Rede ficar indisponível)
  • Criação de um novo objeto (Não haver mais memória disponível)

Como se faz o tratamento de erros na linguagem C#?

Usa-se o sistema de exceções sempre que pode existir a ocorrência de um erro ou de uma situação excecional (código em causa envolvido num bloco try-catch).

Porquê que não se deve usar um bloco “catch” sem tipo definido ou com o tipo “Exception”?

Porque aponta qualquer exceção que ocorra como falta de memória, erros internos do sistema, etc.

Em que consiste o segmento “Finally”?

É frequentemente associado a um bloco try-catch, coloca-se após o último bloco catch e representa o código que deve ser sempre executado quer haja exceções lançadas ou não.

Como devem ser definidos os blocos “catch”?

Têm de ser definidos do mais específico para o mais abrangente: 1º FileNotFoundException, 2º IDException.

Como deve ser efetuado a proteção de fecho de ficheiros? Porquê?

A proteção de fecho dos ficheiros deve ser efetuado de forma individual.

Em que consiste uma exceção? Como se lança? Como se trata?

Uma exceção consiste numa instância de System.Exception ou de uma classe derivada desta. O programador pode:

  • Criar uma exceção utilizando diretamente essa classe,
  • Definir novas classes, derivadas de System.ApplicationException,
  • Classe base reservada para exceções gerais de um programa.

Em C# podem ser lançados apenas objetos e que derivem de System.Exception.

O que é a ApplicationException?

Classe base para uso nas aplicações. O programador deve criar novas exceções derivando desta classe as suas classes.

Entradas relacionadas: