Découvrez comment implémenter des exceptions personnalisées en C # et leur utilité.
Une exception est une erreur d'exécution d'un programme qui ne respecte pas une contrainte système ou d'application, ou une condition qui ne devrait pas se produire pendant une exécution normale. du programme. Les causes possibles des exceptions incluent la tentative de connexion à une base de données qui n'existe plus, lorsqu'un programme tente de diviser un nombre par zéro ou l'ouverture d'un fichier XML corrompu. Lorsque cela se produit, le système intercepte l'erreur et déclenche une exception.
Classes d'exception dans .NET
Dans .NET, une exception est représentée par une instance d'objet avec des propriétés indiquant le lieu où l'exception a été rencontrée dans le code et une brève description de la cause de l'exception. Nous avons différentes classes d'exceptions représentant différents types d'erreur et elles héritent toutes de la classe de base System.Exception
. La classe SystemException
hérite de la classe de base Exception
. Les classes OutOfMemoryException
StackOverflowException
et ArgumentException
héritent de SystemException
. La classe ArgumentException
a deux autres classes qui en dérivent: les classes ArgumentNullException
et ArgumentOutOfRangeException
. La classe ArithmeticException
dérive de la classe de base Exception
. Les exceptions OverflowException
et DivideByZero
héritent alors de la classe ArithmeticException
. Nous avons également la classe ApplicationException
dérivée de la classe de base Exception
.
De plus, nous pouvons définir nos propres classes d'exception et celles-ci peuvent être dérivées de l'exception .
classe de base. Les exceptions que nous définissons dans nos projets sont appelées exceptions définies par l'utilisateur ou personnalisées. La création de notre propre classe d’exceptions est un cas d’utilisation lorsque vous vous connectez à un service externe qui renvoie des codes d’erreur pour indiquer les erreurs. Vous pouvez ensuite trouver un moyen de convertir les codes d'erreur en exceptions personnalisées à l'aide de modèles de conception Gateway ou Facade .
Définition de l'exception personnalisée
Lors de la création de classes d'exceptions personnalisées , ils doivent hériter de la classe System.Exception
(ou de l’une de vos autres classes d’exceptions personnalisées de la section précédente). Le nom de la classe doit se terminer par le mot Exception et implémenter au moins les trois constructeurs communs des types d'exception.
Regardons un exemple d'application qui devrait générer une exception lorsque le solde du compte est inférieur. que le montant de la transaction. Créez un nouveau projet d'application console. Ajouter un fichier InsufficientFuncException.cs avec la définition de classe suivante:
[ Système . Serializable ]
public classe classe InsufficientFuncException : Système . Exception
{
private static en lecture seule string DefaultMessage = "Le solde du compte est insuffisant pour la transaction." ;
public
. 19659011] string AccountName { get ; set ; }
public int . Compte rendu de la balance { . get ; set ; }
public int TransactionAmount { get ; set ; [; 19659013]}
public InsufficientFuncException () : de base ( de DefaultMessage ) { de ]. public InsufficientFuncException ( chaîne message ) : base ( message ) { } [19659014] public InsufficientFuncException ( s tring message Système . Exception innerException ]
: base ( message
Source link