ایجاد استثناء
شما میتوانید در هر جای برنامه یک خطای ساختگی ایجاد کنید. همچنین اگر پیغام پیشفرض استثناءها را دوست ندارید میتوانید به دلخواه خودتان یک پیغام برای نمایش ایجاد کنید. به مثال زیر توجه کنید :
1: using System; 2: 3: class Program 4: { 5: public static void Main() 6: { 7: int firstNumber, secondNumber, result; 8: 9: Console.Write("Enter the first number: "); 10: firstNumber = Int32.Parse(Console.ReadLine()); 11: 12: Console.Write("Enter the second number: "); 13: secondNumber = Int32.Parse(Console.ReadLine()); 14: 15: try 16: { 17: if (secondNumber == 0) 18: { 19: throw new DivideByZeroException(); 20: } 21: else 22: { 23: result = firstNumber / secondNumber; 24: } 25: } 26: catch (DivideByZeroException error) 27: { 28: Console.WriteLine(error.Message); 29: } 30: } 31: }
Enter the first number: 10 Enter the second number: 0 Attempted to divide by zero.
در خط 19 و درست قبل از یک نمونه ایجاد شده از کلاس exception از کلمه کلیدی throw استفاده کردهایم. میتوان مستقیماً یک نمونه از کلاس exception ایجاد و یک خطا را به دام انداخت. به مثال زیر توجه کنید :
DivideByZeroException error = new DivideByZeroException(); throw error;
همچنین میتوان یک پیغام خطای سفارشی را به وسیله یکی دیگر از سربارگذاری های کلاس Exception که یک رشته را دریافت و آن را به عنوان پیغام خطا نمایش میدهد، نمایش داد.
throw new DivideByZeroException("Cannot divide by zero!");
در این حالت پیغام خطای پیشفرض تغییر کرده و در خاصیت Message ذخیره میشود. ایجاد استثناء بیشتر در مواقعی به کار میرود که یک کد در حالت عادی خطا ندارد ولی شما میخواهید در هر صورت به عنوان یک خطا در نظر گرفته شود.