فحص الاستثناءات وكيفية استخدام الاستثناءات
- 6 دقائق
في وقت سابق من هذه الوحدة النمطية، تعلمت أن أخطاء وقت التشغيل في C# تسمى استثناءات وأنك تحتاج إلى "التقاطها" قبل تعطل التطبيق الخاص بك. حقا؟ يبدو التقاط الاستثناءات قبل أن تتمكن من تعطل التطبيق الخاص بك وكأنه لعبة فيديو أكثر من كتابة تطبيق. إذن ماذا يعني بالضبط "التقاط" استثناء؟ للإجابة على هذا السؤال، تحتاج إلى البدء بإلقاء نظرة فاحصة على ما هو الاستثناء.
ما هي الاستثناءات؟
فيما يلي تعريف أكثر رسمية يصف ما هو الاستثناء وكيفية استخدام استثناء في تطبيق C#:
في C#، يتم نشر الأخطاء في البرنامج في وقت التشغيل من خلال البرنامج باستخدام آلية تسمى الاستثناءات. يتم طرح الاستثناءات بواسطة التعليمات البرمجية التي تواجه خطأ ويتم التقاطها بواسطة التعليمات البرمجية التي يمكنها تصحيح الخطأ. يمكن طرح الاستثناءات بواسطة وقت تشغيل .NET أو بواسطة التعليمات البرمجية في برنامج. يتم تمثيل الاستثناءات بواسطة فئات مشتقة من استثناء. تحدد كل فئة نوع الاستثناء وتحتوي على خصائص تحتوي على تفاصيل حول الاستثناء.
هام
لا يتطلب هذا التدريب فهما عميقا لفئات .NET. لا تقلق إذا كان هذا التعريف مربكا بعض الشيء. يمكنك استخدام الاستثناءات في التعليمات البرمجية الخاصة بك دون فهم عميق للفئات.
تتعمق وثائق Microsoft حول الاستثناءات في تفاصيل كبيرة. ومع ذلك، يوفر هذا التعريف المعلومات التي تحتاجها الآن. على وجه التحديد، تحتاج إلى فهم أمرين:
- تحتاج إلى فهم ما هي الاستثناءات.
- تحتاج إلى فهم كيفية استخدام الاستثناءات في التطبيقات الخاصة بك.
يمكنك التفكير في استثناء كمتغير له قدرات إضافية. يمكنك القيام بنفس نوع الأشياء مع الاستثناءات التي تقوم بها مع المتغيرات، على سبيل المثال:
- يمكنك إنشاء أنواع مختلفة من الاستثناءات.
- يمكنك الوصول إلى محتويات استثناء.
ماذا يعني "طرح" و"التقاط" استثناء؟
يمكن شرح مصطلحي "throw" و"catch" من خلال تقييم تعريف الاستثناء.
الجملة الثانية من التعريف تقول "يتم طرح الاستثناءات بواسطة التعليمات البرمجية التي تواجه خطأ ويتم التقاطها بواسطة التعليمات البرمجية التي يمكنها تصحيح الخطأ". يخبرك الجزء الأول من هذه الجملة أنه يتم إنشاء استثناءات بواسطة وقت تشغيل .NET عند حدوث خطأ في التعليمات البرمجية الخاصة بك. يخبرك الجزء الثاني من الجملة أنه يمكنك كتابة التعليمات البرمجية لالتقاط استثناء تم طرحه. بالإضافة إلى ذلك، يمكن استخدام التعليمات البرمجية التي تلتقط الاستثناء لإكمال إجراء تصحيحي، ونأمل أن يخفف من الموقف الناتج عن التعليمات البرمجية التي أدت إلى الخطأ. بمعنى آخر، يمكنك كتابة التعليمات البرمجية التي تحمي التطبيق الخاص بك عند حدوث خطأ.
بعد تقييم تلك الجملة الثانية من التعريف، تعرف ما يلي:
- يتم إنشاء استثناء في وقت التشغيل عندما تنتج التعليمات البرمجية خطأ.
- يمكن التعامل مع الاستثناء كمتغير يحتوي على بعض القدرات الإضافية.
- يمكنك كتابة التعليمات البرمجية التي تصل إلى الاستثناء وتتخذ إجراء تصحيحيا.
يخبرك الجزء المتبقي من التعريف أنه إذا اكتشف وقت تشغيل .NET خطأ، فإنه ينشئ الاستثناء. يحتوي الاستثناء الذي تم إنشاؤه على معلومات حول الخطأ الذي حدث. يمكن للتعليمات البرمجية الخاصة بك التقاط استثناء وتصحيح المشكلة باستخدام المعلومات المخزنة في الاستثناء.
خلاصة
فيما يلي بعض الأشياء المهمة التي يجب تذكرها من هذه الوحدة:
- يتم استخدام الاستثناءات في C# لنشر الأخطاء في وقت التشغيل، ويتم تمثيلها بواسطة فئات مشتقة
Exceptionمن الفئة . - يتم طرح الاستثناءات بواسطة التعليمات البرمجية التي تواجه خطأ ويتم التقاطها بواسطة التعليمات البرمجية التي يمكنها تصحيح الخطأ.
- عند اكتشاف استثناء، يمكن للتعليمات البرمجية الوصول إلى محتوياته واتخاذ إجراء تصحيحي للتخفيف من الخطأ.
- ينشئ وقت تشغيل .NET استثناءات عندما يكتشف خطأ ويحتوي الاستثناء على معلومات حول نوع الخطأ الذي حدث.