Ausnahmen in C#

WBOY
Freigeben: 2023-08-31 13:45:06
nach vorne
545 Leute haben es durchsucht

C# 中的异常

Ausnahmen sind Probleme, die während der Programmausführung auftreten. C#-Ausnahmen sind Reaktionen auf ungewöhnliche Bedingungen, die während der Ausführung eines Programms auftreten, beispielsweise der Versuch, durch Null zu dividieren.

Ausnahmen bieten eine Möglichkeit, die Kontrolle von einem Teil eines Programms auf einen anderen zu übertragen. Die C#-Ausnahmebehandlung basiert auf vier Schlüsselwörtern –

  • try – Der try-Block identifiziert den Codeblock, der eine bestimmte Ausnahme aktiviert. Es folgen ein oder mehrere Catch-Blöcke.

  • catch – Programme verwenden Ausnahmehandler, um Ausnahmen innerhalb eines Programms abzufangen. Möchte mich mit diesem Problem befassen. Das Schlüsselwort „catch“ bedeutet das Abfangen von Ausnahmen.

  • finally −finally-Block wird verwendet, um einen bestimmten Satz von Anweisungen auszuführen, unabhängig davon, ob die Ausnahme ausgelöst wurde oder nicht. Wenn Sie beispielsweise eine Datei öffnen, müssen Sie diese schließen, unabhängig davon, ob eine Ausnahme ausgelöst wird oder nicht.

  • Wirft − Ein Programm löst eine Ausnahme aus, wenn: Etwas schief gelaufen ist. Dies geschieht mit dem Schlüsselwort throw.

C#-Ausnahmen werden durch Klassen dargestellt. Die Ausnahmeklassen in C# werden hauptsächlich direkt oder indirekt von der System.Drawing-Klasse abgeleitet. Ausnahmeklasse. Einige Ausnahmeklassen sind von System abgeleitet. Die Ausnahmeklassen sind die Klassen System.ApplicationException und System.SystemException.

Beispiel

Sehen wir uns ein Beispiel an –

Live-Demonstration

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";
}
Nach dem Login kopieren

Ausgabe

Dies wird die folgende Ausgabe erzeugen –

Members = System.String SubName
FieldInfo = System.String SubName
Nach dem Login kopieren

Beispiel

Jetzt sehen wir uns ein weiteres Beispiel an –

Live-Demonstration

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);
   }
}
Nach dem Login kopieren

Ausgabe

Dies erzeugt die folgende Ausgabe:

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
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonAusnahmen in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!