C# Academy · บทเรียน

ทำความเข้าใจการจัดการข้อยกเว้น

จัดการข้อผิดพลาดขณะทำงานอย่างเหมาะสมด้วยเทคนิคการจัดการข้อยกเว้น

บทเรียน 3 จาก 510 ขั้นตอน

ทำความเข้าใจการจัดการข้อยกเว้น เป็นบทเรียน C# Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 5 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน C# Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส C# Academy มีบทเรียนทั้งหมด 5 บทเรียน

บทนำสู่การจัดการข้อยกเว้น

ทำความเข้าใจการจัดการข้อยกเว้น

ยินดีต้อนรับสู่บทเรียนถัดไป! ในบทเรียนนี้ คุณจะได้เรียนรู้เกี่ยวกับการจัดการข้อยกเว้นใน C# ความสำคัญของการจัดการข้อยกเว้น และวิธีจัดการข้อผิดพลาดในแอปพลิเคชันของคุณอย่างมีประสิทธิภาพ มาเริ่มกันเลยนะครับ!

ทำความเข้าใจการจัดการข้อยกเว้น — ภาพประกอบ 1

การจัดการข้อยกเว้นคืออะไร

การจัดการข้อยกเว้น คือกลไกสำหรับตอบสนองต่อข้อผิดพลาดขณะทำงานอย่างควบคุมได้ ช่วยให้โปรแกรมของคุณฟื้นตัวจากเงื่อนไขที่ไม่คาดคิดได้อย่างเหมาะสม

ประเด็นสำคัญ: ใช้การจัดการข้อยกเว้นเพื่อป้องกันไม่ให้แอปพลิเคชันหยุดทำงาน และให้ข้อมูลตอบกลับที่มีความหมายแก่ผู้ใช้

บล็อก Try-Catch

บล็อก try-catch ใช้สำหรับจัดการข้อยกเว้น โค้ดที่อาจทำให้เกิดข้อยกเว้นจะวางไว้ภายในบล็อก try และบล็อก catch จะจัดการข้อยกเว้นนั้น ตัวอย่าง:

ประเด็นสำคัญ: ใช้ชนิดข้อยกเว้นที่เฉพาะเจาะจงในบล็อก catch เพื่อจัดการข้อผิดพลาดแต่ละประเภท

using System;

class Program {
    static void Main() {
        try {
            int result = 10 / 0; // This will throw a DivideByZeroException
        } catch (DivideByZeroException ex) {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}

บล็อก Finally

บล็อก finally ใช้สำหรับเรียกใช้โค้ดที่ต้องทำงานไม่ว่าจะเกิดข้อยกเว้นหรือไม่ก็ตาม ตัวอย่าง:

เคล็ดลับ: ใช้บล็อก finally สำหรับการล้างทรัพยากร เช่น การปิดไฟล์หรือการเชื่อมต่อฐานข้อมูล

using System;

class Program {
    static void Main() {
        try {
            int[] numbers = { 1, 2, 3 };
            Console.WriteLine(numbers[5]); // This will throw an IndexOutOfRangeException
        } catch (IndexOutOfRangeException ex) {
            Console.WriteLine("Error: " + ex.Message);
        } finally {
            Console.WriteLine("This will always execute.");
        }
    }
}

การโยนข้อยกเว้น

คุณสามารถใช้คำสำคัญ throw เพื่อโยนข้อยกเว้นด้วยตนเองได้ ตัวอย่าง:

ประเด็นสำคัญ: โยนข้อยกเว้นเพื่อบังคับใช้กฎหรือจัดการเงื่อนไขที่ไม่ถูกต้องในแอปพลิเคชันของคุณ

using System;

class Program {
    static void Main() {
        try {
            ValidateAge(15);
        } catch (Exception ex) {
            Console.WriteLine("Error: " + ex.Message);
        }
    }

    static void ValidateAge(int age) {
        if (age < 18) {
            throw new ArgumentException("Age must be 18 or older.");
        }
    }
}

ข้อยกเว้นแบบกำหนดเอง

คุณสามารถกำหนดคลาสข้อยกเว้นแบบกำหนดเองเพื่อจัดการข้อผิดพลาดเฉพาะของแอปพลิเคชันได้ ตัวอย่าง:

เคล็ดลับ: ใช้ข้อยกเว้นแบบกำหนดเองเพื่อแสดงข้อความข้อผิดพลาดที่มีความหมายและเฉพาะเจาะจงกับตรรกะของแอปพลิเคชัน

using System;

class CustomException : Exception {
    public CustomException(string message) : base(message) {}
}

class Program {
    static void Main() {
        try {
            throw new CustomException("This is a custom exception.");
        } catch (CustomException ex) {
            Console.WriteLine("Caught custom exception: " + ex.Message);
        }
    }
}

โจทย์ฝึกปฏิบัติ

สร้างโปรแกรมที่รับอินพุตจากผู้ใช้เป็นตัวเลข และโยนข้อยกเว้นหากตัวเลขนั้นเป็นลบ ใช้บล็อก try-catch เพื่อจัดการข้อยกเว้น ตัวอย่าง:

using System;

class Program {
    static void Main() {
        try {
            Console.WriteLine("Enter a number:");
            int number = int.Parse(Console.ReadLine());
            if (number < 0) {
                throw new ArgumentException("Number cannot be negative.");
            }
            Console.WriteLine("You entered: " + number);
        } catch (Exception ex) {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}

แนวทางปฏิบัติที่ดีสำหรับการจัดการข้อยกเว้น

ต่อไปนี้คือแนวทางปฏิบัติที่ดี:

  • ดักจับเฉพาะข้อยกเว้นที่เจาะจง เพื่อหลีกเลี่ยงการบดบังข้อผิดพลาดอื่น
  • ใช้บล็อก finally เพื่อล้างทรัพยากร
  • โยนข้อยกเว้นสำหรับสถานการณ์ผิดปกติ ไม่ใช่เพื่อควบคุมลำดับการทำงาน
  • บันทึกข้อยกเว้นเพื่อติดตามปัญหาในสภาพแวดล้อมใช้งานจริง

เคล็ดลับ: การจัดการข้อยกเว้นอย่างเหมาะสมทำให้แอปพลิเคชันทำงานได้ทนทานและใช้งานง่ายยิ่งขึ้น

ทบทวนการจัดการข้อยกเว้น

ทำได้ดีมาก!

ขอแสดงความยินดีด้วย! คุณได้เรียนรู้วิธีจัดการข้อยกเว้นอย่างมีประสิทธิภาพเพื่อสร้างแอปพลิเคชันที่ทนต่อข้อผิดพลาดแล้ว ในบทเรียนถัดไป เราจะสำรวจการทำงานกับฐานข้อมูลเพื่อจัดการและคิวรีข้อมูล มาร่วมเขียนโค้ดกันต่อไปนะครับ!

ทำความเข้าใจการจัดการข้อยกเว้น — ภาพประกอบ 10
เริ่มต้นได้ฟรี

เรียนรู้ C# ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
93
บทเรียน
346

คำถามที่พบบ่อย

บทเรียน “ทำความเข้าใจการจัดการข้อยกเว้น” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ทำความเข้าใจการจัดการข้อยกเว้น” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส C# Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส C# Academy มีบทเรียนทั้งหมด 5 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ทำความเข้าใจการจัดการข้อยกเว้น”

จัดการข้อผิดพลาดขณะทำงานอย่างเหมาะสมด้วยเทคนิคการจัดการข้อยกเว้น คุณปฏิบัติ C# Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน C# Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน C# Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 5 บทเรียน

บทเรียน “ทำความเข้าใจการจัดการข้อยกเว้น” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน C# Academy นี้ได้ไหม

ได้ บทเรียน C# Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การอ่านและเขียนไฟล์
  2. การทำงานกับ JSON และ XML
  3. ทำความเข้าใจการจัดการข้อยกเว้น
  4. การทำงานกับฐานข้อมูล
  5. ใช้ LINQ สำหรับค้นข้อมูล
← กลับไปที่ C# Academy