Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

การขยายพันธุ์ข้อยกเว้นใน C #


การนำเสนอข้อยกเว้นสามารถเข้าใจได้โดยวิธีการจัดการข้อยกเว้นใน C#

ในการลอง เมื่อมีข้อยกเว้นเกิดขึ้น บล็อก catch ที่เกี่ยวข้องจะถูกตรวจสอบ สิ่งนี้ทำเพื่อดูว่าพวกเขาสามารถตรวจจับข้อยกเว้นได้หรือไม่ หากไม่พบข้อยกเว้นที่ตรงกัน ข้อยกเว้นจะเผยแพร่ไปยังบล็อกการลองระดับที่สูงกว่า สิ่งนี้จะเกิดขึ้นซ้ำๆ จนกว่าจะตรวจพบข้อยกเว้น ในกรณีที่ไม่พบข้อยกเว้น การดำเนินการของโปรแกรมจะสิ้นสุดลง

แนวคิดข้างต้นอธิบายไว้ในตัวอย่างด้านล่างซึ่งแสดงคำสั่งการลองที่ซ้อนกัน

ตัวอย่าง

using System;
using System.Text;
public class Demo {
   public static void Main() {
      try {
         try {
            throw new ArgumentException();
         }catch (NullReferenceException e) {
            Console.WriteLine("catch one");
         } finally {
            Console.WriteLine("finally one");
         }
      } catch (Exception e) {
         Console.WriteLine("catch two");
      } finally {
         Console.WriteLine("finally two");
      }
      Console.ReadLine();
   }
}

ผลลัพธ์

finally one
catch two
finally two