English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الدرس، سنتعلم الاستثناءات في Java. سنقوم بشرح الأخطاء، الاستثناءات وأنواع الاستثناءات المختلفة.
الاستثناء هو حدث غير متوقع يحدث أثناء تنفيذ البرنامج. يؤثر على تدفق التعليمات للبرنامج، مما يؤدي إلى إنهاء غير متوقع للبرنامج.
هناك العديد من الأسباب التي يمكن أن تحدث استثناءات. من بينها:
إدخال مستخدم غير صالح
انهيار الجهاز
فقدان الاتصال بالشبكة
قيود فيزيائية (عدم كفاية ذاكرة على القرص)
خطأ في الكود
فتح ملف غير متاح
هذا هو رسم توضيحي بسيط للتسلسل الهرمي للاستثناءات في Java.
من الجدول الزمني يمكن رؤية أن كائن Throwable هو الكائن الجذر في التسلسل الهرمي.
لاحظ أن التسلسل الهرمي مقسم إلى فرعين: Error و Exception.
Errorيُمثل حالة غير قابلة للإصلاح، مثل عدم كفاية ذاكرة وحدة معالجة مركزية JVM، تسرب ذاكرة، أخطاء انهيار نطاق الدالة، عدم التوافق مع المكتبة، تكرار دائري غير محدود، إلخ.
ال أخطاء عادة ما تكون خارج نطاق التحكم للمبرمج، ونحن لا يجب أن نحاول التعامل مع الأخطاء.
يمكن للبرنامج التقاطه وتعاطي معهاستثناء.
عند حدوث استثناء داخل دالة، سيتم إنشاء كائن. يُدعى هذا الكائن كائن الاستثناء.
انه يحتوي على معلومات حول الاستثناء، مثل اسم الاستثناء وشرحه ووضع البرنامج عند حدوث الاستثناء.
في الدرس التالي، سنتعلم كيفية التعامل مع هذه الاستثناءات. في هذا الدرس، سنركز الآن على أنواع الاستثناءات المختلفة في Java.
مجال الاستثناءات له فرعان: RuntimeException و IOException.
واحداستثناءات التشغيلتحدث بسبب أخطاء برمجة.استثناءات غير مبرمجة.
هذه الاستثناءات لا يتم التحقق منها عند التجميع، بل عند التشغيل. بعض الاستثناءات الشائعة عند التشغيل هي:
استخدام API غير صحيح - IllegalArgumentException
زيارة ناقص للنقطة (عدم تفعيل المتغير) - NullPointerException
زيادة الحد الأعلى للاكسساس للمصفوفة - ArrayIndexOutOfBoundsException
تقسيم الرقم بـ 0 - ArithmeticException
يمكنك التفكير في الأمر كالتالي:.”,
إذا قمت بالتحقق من أن المتغير قد تم تفعيله قبل استخدامه، لن يحدث NullPointerException.
إذا تم اختبار فهرس مصفوفة بناءً على حدود المصفوفة، لن يحدث ArrayIndexOutOfBoundsException.
IOException يُسمى أيضًااستثناء التحقق. يتم فحصها من قبل معالج التجميع عند التجميع، ويُطلب من المبرمج معالجتها.
بعض أمثلة الاستثناءات التحققية هي:
محاولة فتح ملف غير موجود يؤدي إلى FileNotFoundException
ال محاولة قراءة محتوى بعد نهاية ملف
الآن، بعد أن تعرفنا على الاستثناءات، سنتعلم في الدرس التاليمعالجة الاستثناءات.