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

คีย์เวิร์ด try ใน C#

บล็อก try ใช้ระบุช่วงโค้ดที่อาจเกิดข้อยกเว้น (Exception) และจะต้องตามด้วยบล็อก catch หนึ่งบล็อกขึ้นไปเพื่อจัดการข้อยกเว้นที่เกิดขึ้น

รูปแบบพื้นฐาน

try { 
    // โค้ดที่อาจเกิดข้อยกเว้น
} catch (ExceptionType e) { 
    // โค้ดจัดการข้อยกเว้น
}

ตัวอย่างการใช้งาน

ตัวอย่างต่อไปนี้แสดงการจัดการ DivideByZeroException เมื่อหารด้วยศูนย์:

using System;

class Demo {
    int result;
    
    Demo() {
        result = 0;
    }
    
    public void Division(int val1, int val2) {
        try {
            result = val1 / val2;
        } catch (DivideByZeroException e) {
            Console.WriteLine("ข้อยกเว้นที่จับได้: {0}", e);
        } finally {
            Console.WriteLine("ผลลัพธ์: {0}", result);
        }
    }
    
    static void Main(string[] args) {
        Demo d = new Demo();
        d.Division(100, 0);
        Console.ReadKey();
    }
}

ผลลัพธ์

ข้อยกเว้นที่จับได้: System.DivideByZeroException: Attempted to divide by zero.
at Program.Demo.division (System.Int32 val1, System.Int32 val2) [0x00000] in <0d240b2120114744a121b66d65545f3f>:0
ผลลัพธ์: 0

จุดสำคัญ

  • try: กำหนดขอบเขตโค้ดที่ต้องตรวจสอบข้อยกเว้น
  • catch: จับและจัดการข้อยกเว้นเฉพาะประเภทที่ระบุ
  • finally: (ตัวเลือก) ทำงานเสมอไม่ว่าจะมีข้อยกเว้นหรือไม่ กรณีตัวอย่างจะแสดงผลลัพธ์เสมอ
  • สามารถมี catch หลายบล็อกสำหรับประเภทข้อยกเว้นต่างกันได้