Exceptions en C#

WBOY
Libérer: 2023-08-31 13:45:06
avant
553 Les gens l'ont consulté

C# 中的异常

Les exceptions sont des problèmes qui surviennent lors de l'exécution du programme. Les exceptions C# sont des réponses à des conditions inhabituelles qui se produisent lors de l'exécution d'un programme, comme une tentative de division par zéro.

Les exceptions permettent de transférer le contrôle d'une partie d'un programme à une autre. La gestion des exceptions C# est basée sur quatre mots-clés -

  • try - Le bloc try identifie le bloc de code qui active une exception spécifique. Il est suivi d'un ou plusieurs blocs catch.

  • catch - Les programmes utilisent des gestionnaires d'exceptions pour intercepter les exceptions au sein d'un programme. Vous voulez régler ce problème. Le mot-clé catch signifie intercepter les exceptions.

  • finally −finally le bloc est utilisé pour exécuter un ensemble donné d'instructions, que l'exception ait été levée ou non. Par exemple, si vous ouvrez un fichier, vous devez le fermer, qu'une exception soit levée ou non.

  • Lance − Un programme lève une exception lorsque : Quelque chose s'est mal passé. Cela se fait en utilisant le mot-clé throw.

Les exceptions C# sont représentées par des classes. Les classes d'exceptions en C# sont principalement dérivées directement ou indirectement de la classe System.Drawing. Classe d'exceptions. Certaines classes d'exceptions sont dérivées de System. Les classes d'exceptions sont les classes System.ApplicationException et System.SystemException.

Exemple

Voyons un exemple-

Démonstration en direct

using System;
using System.Reflection;
public class Demo {
   public static void Main(){
      Type type = typeof(Subject);
      try {
         FieldInfo fieldInfo = type.GetField("SubName");
         MemberInfo[] info = type.GetMember("SubName");
         Console.Write("Members = ");
         for (int i = 0; i < info.Length; i++)
            Console.WriteLine(" {0}", info[i]);
         Console.WriteLine("FieldInfo = {0}", fieldInfo);
      }
      catch (ArgumentNullException e){
         Console.Write("{0}", e.GetType(), e.Message);
      }
   }
}
public class Subject{
   public string SubName = "Science";
}
Copier après la connexion

Sortie

Cela produira la sortie suivante-

Members = System.String SubName
FieldInfo = System.String SubName
Copier après la connexion

Exemple

Voyons maintenant un autre exemple-

Démonstration en direct

using System;
public class Demo {
   int result;
   Demo() {
      result = 0;
   }
   public void division(int num1, int num2) {
      try {
         result = num1 / num2;
      }
      catch (DivideByZeroException e) {
         Console.WriteLine("Exception caught = {0}", e);
      }
      finally {
         Console.WriteLine("Result = {0}", result);
      }
   }
   public static void Main(string[] args) {
      Demo d = new Demo();
      d.division(100, 0);
   }
}
Copier après la connexion

Sortie

Ceci produira le résultat suivant -

Exception caught = System.DivideByZeroException: Attempted to divide by zero.
   at Demo.division(Int32 num1, Int32 num2) in d:\Windows\Temp0kebv45.0.cs:line 11 
Result = 0
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!