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

การจัดการข้อยกเว้นคืออะไร
การจัดการข้อยกเว้น คือกลไกสำหรับตอบสนองต่อข้อผิดพลาดขณะทำงานอย่างควบคุมได้ ช่วยให้โปรแกรมของคุณฟื้นตัวจากเงื่อนไขที่ไม่คาดคิดได้อย่างเหมาะสม
ประเด็นสำคัญ: ใช้การจัดการข้อยกเว้นเพื่อป้องกันไม่ให้แอปพลิเคชันหยุดทำงาน และให้ข้อมูลตอบกลับที่มีความหมายแก่ผู้ใช้
บล็อก 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เพื่อล้างทรัพยากร - โยนข้อยกเว้นสำหรับสถานการณ์ผิดปกติ ไม่ใช่เพื่อควบคุมลำดับการทำงาน
- บันทึกข้อยกเว้นเพื่อติดตามปัญหาในสภาพแวดล้อมใช้งานจริง
เคล็ดลับ: การจัดการข้อยกเว้นอย่างเหมาะสมทำให้แอปพลิเคชันทำงานได้ทนทานและใช้งานง่ายยิ่งขึ้น
ทบทวนการจัดการข้อยกเว้น
ทำได้ดีมาก!
ขอแสดงความยินดีด้วย! คุณได้เรียนรู้วิธีจัดการข้อยกเว้นอย่างมีประสิทธิภาพเพื่อสร้างแอปพลิเคชันที่ทนต่อข้อผิดพลาดแล้ว ในบทเรียนถัดไป เราจะสำรวจการทำงานกับฐานข้อมูลเพื่อจัดการและคิวรีข้อมูล มาร่วมเขียนโค้ดกันต่อไปนะครับ!

เรียนรู้ 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 ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การอ่านและเขียนไฟล์
- การทำงานกับ JSON และ XML
- ทำความเข้าใจการจัดการข้อยกเว้น
- การทำงานกับฐานข้อมูล
- ใช้ LINQ สำหรับค้นข้อมูล