Qual é a diferença entre erro e exceção em C

Índice:

Anonim

o principal diferença entre erro e exceção em C # é que um Erro ocorre devido à indisponibilidade de um recurso do sistema, enquanto uma Exceção ocorre devido a um problema no programa.

Há uma diferença distinta entre Erro e Exceção em C #, embora as pessoas geralmente usem esses dois termos de maneira intercambiável. Um erro é uma situação que ocorre devido à ausência de um recurso de sistema necessário. Uma exceção é uma situação que surge devido a um problema no programa. No geral, um erro é irrecuperável, enquanto uma exceção é recuperável.

Erro, exceção, C #

O que é erro em C #

Um erro é uma situação que ocorre devido à indisponibilidade de recursos do sistema. Erros são falhas complexas e o programador não consegue lidar com eles em seu programa. Portanto, um erro é irrecuperável. É um tipo não verificado porque o compilador não sabe sobre sua ocorrência. Portanto, ocorre um erro no tempo de execução. Erro de falta de memória, erro de estouro de pilha, erros de falha do sistema são alguns erros comuns. Como o programador não pode lidar com esses erros usando seu programa C #, eles fazem com que o programa seja encerrado de forma anormal.

O que é exceção em C #

Uma exceção é um problema que ocorre quando um programa é executado. A exceção pode ocorrer devido a um problema no programa C #, mas é possível recuperá-los. Dividir um número por zero é um exemplo de exceção. O programador lida com exceções no programa C # usando os blocos try, catch e finally. Ele pode colocar o código que provavelmente causará uma exceção dentro do bloco try. Se ocorrer uma exceção, o programa executa as instruções dentro do bloco catch. O bloco finally será executado independentemente de ocorrer uma exceção ou não. O programador pode incluir operações como fechamento de arquivo dentro do bloco finally. Além disso, não é obrigatório ter um bloco final.

Existem dois tipos de exceções, como exceções marcadas e não verificadas. O compilador conhece as exceções verificadas. Por outro lado, o compilador não conhece exceções não verificadas.

Figura 1: programa C # com uma exceção

Acima está um programa com uma exceção. A variável 'a' tem o valor 10, enquanto 'b' tem o valor 0. Dividir a por b cria uma exceção. Portanto, o bloco catch executa e imprime a exceção. No final, o bloco finally é executado.

Diferença entre erro e exceção em C #

Definição

Um erro é uma indicação de uma condição inesperada que ocorre devido à falta de recursos do sistema, enquanto uma exceção é um problema em um programa que impede o fluxo normal do programa. Portanto, esta é a principal diferença entre Erro e Exceção em C #.

Ocorrência

Recuperação

A recuperação é outra diferença entre erro e exceção em C #. Um erro é irrecuperável, enquanto uma exceção é recuperável.

Manuseio

Além disso, não há como lidar com um erro usando o programa. No entanto, é possível tratar uma exceção em um programa usando palavras-chave como try, catch, finally.

Classificação

Um erro é classificado como um tipo não verificado, enquanto uma exceção é classificada como exceções verificadas e não verificadas. Portanto, esta é outra diferença entre Erro e Exceção em C #.

Exemplos

OutOfMemoryError, StackOverFlowError e IOError são alguns exemplos de erros, enquanto ArithmeticException, SQLException e NullPointerException são alguns exemplos de exceções. Esta é outra diferença entre Erro e Exceção em C #.

Conclusão

A principal diferença entre Erro e Exceção em C # é que ocorre um Erro devido à indisponibilidade de um recurso do sistema, enquanto uma Exceção ocorre devido a um problema no programa. Em resumo, um erro é uma condição crítica que não pode ser tratada por um programa C #, enquanto uma exceção é uma situação excepcional que pode ser tratada por um programa C #.

Referência:

1. “Tratamento de exceções C #.” Www.tutorialspoint.com, Tutorials Point, disponível aqui.

Qual é a diferença entre erro e exceção em C