1
resposta

[Dúvida] A resposta é exatamente o que fizemos no vídeo anterior?

Professor, eu não entendi. A resposta dessa questão é exatamente o que fizemos na aula anterior?

1 resposta

Wellington,

No vídeo passado "Tratando exceções" o instrutor explicou sobre tratamento de erros no código. O que acontece se o usuário tomar uma atitude "errada" (entre aspas) ou inesperada.

Para resolver este problema existe a classe "SystemException" tratando vários problemas que podem ocorrer. Um exemplo é o índice fora da faixa "IndexOutOfRangeException" que herda da ""SystemException".

public sealed class IndexOutOfRangeException : SystemException

Por favor, leia mais sobre o assunto:

==========================================================

IndexOutOfRangeException Classe

Referência

https://learn.microsoft.com/pt-br/dotnet/api/system.indexoutofrangeexception?view=net-7.0

==========================================================

SystemException Classe

Referência

https://learn.microsoft.com/pt-br/dotnet/api/system.systemexception?view=net-7.0

==========================================================

C# - Exception x Error

Hoje veremos os conceitos de Exception e Error e qual a diferença entre eles, se que há alguma diferença.

Classe de Exceção e Descrição
System.IO.IOException - Trata erro de I/O.
System.IndexOutOfRangeException - Trata erro gerado por uma referência a um índice de um array fora do escopo.
System.ArrayTypeMismatchException - Trata erros gerados quando o tipo incompatível com o tipo Array.
System.NullReferenceException - Trata erros gerados a partir da referência a objetos null.
System.DivideByZeroException - Trata erros gerados pela divisão por zero.
System.InvalidCastException - Trata erros gerados durante a conversão de tipos
System.OutOfMemoryException - Trata erros gerados a partir de memória insuficiente
System.StackOverflowException - Trata erro gerados a partir do estoura da pilha

Evite lancar exceções

Lançar ou manipular uma exceção consome uma quantidade significativa de recursos do sistema e de tempo de execução.

Você deve lançar exceções somente para lidar com condições realmente extraordinárias e não para manipular eventos previsíveis ou de fluxo de controle. Assim você não deve gerar uma exceção para entradas inválidas do usuário e sim deve direcionar os usuários para inserir novamente os dados.

E estamos conversados...

https://macoratti.net/18/07/c_experr1.htm

==========================================================

[]'s,

Fabio I.