Capture Múltiplas Exceções em C#
-
Capture Múltiplas Exceções com a Classe
Exception
emC#
-
Capture múltiplas exceções com a instrução
if
emC#
Este tutorial discutirá os métodos para capturar várias exceções em C#.
Capture Múltiplas Exceções com a Classe Exception
em C#
A classe Exception
é usada para representar uma exceção geral em C#. Podemos usar a classe Exception
dentro da cláusula try...catch
para capturar qualquer tipo de exceção lançada pelo código. Veja o seguinte código de exemplo.
using System;
namespace convert_int_to_bool {
class Program {
static void Main(string[] args) {
try {
int i = 1;
bool b = Convert.ToBoolean(i);
Console.WriteLine(b);
} catch (Exception e) {
Console.WriteLine("An Exception Occured");
}
}
}
}
Resultado:
True
No código acima, capturamos qualquer tipo de exceção lançada por nosso código com a classe Exception
em C#. Essa abordagem geralmente é desencorajada porque não nos fornece informações suficientes sobre o problema e como solucioná-lo. Devemos sempre preferir tipos de exceção específicos em vez deste genérico.
Capture múltiplas exceções com a instrução if
em C#
O uso de exceções específicas exige que escrevamos muitos códigos na forma de cláusulas catch
. Podemos usar a instrução if
para capturar vários tipos de exceções com apenas uma cláusula catch
em C#. Veja o seguinte código de exemplo.
using System;
namespace convert_int_to_bool {
class Program {
static void Main(string[] args) {
try {
int i = 1;
bool b = Convert.ToBoolean(i);
Console.WriteLine(b);
} catch (Exception e) {
if (ex is FormatException || ex is OverflowException) {
Console.WriteLine("Format or Overflow Exception occured");
}
}
}
}
}
Resultado:
True
No código acima, capturamos as exceções FormatException
e OverflowException
com apenas uma cláusula catch
usando uma instrução if
em C#.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn