كما هو مذكور بالفعل في إجابة أخرىلا ينصح به للقبض على NullPointerException. ومع ذلك ، يمكنك بالتأكيد التقاطها ، كما يوضح المثال التالي. على الرغم من أنه يمكن اكتشاف NPE ، إلا أنه لا ينبغي عليك فعل ذلك بالتأكيد ولكن إصلاح المشكلة الأولية ، وهي طريقة Check_Circular.
هل NullPointerException هو استثناء محدد؟
الإجابة: NullPointerExceptionليس استثناءً محددًا. إنه سليل RuntimeException ولم يتم تحديده.
في هذه الحالة سيتم طرح NullPointerException؟
يتم طرح استثناء مؤشر فارغ عندما يحاول أحد التطبيقات استخدام قيمة فارغة في حالةحيث يكون الكائن مطلوبًا. وتشمل هذه: استدعاء طريقة المثيل لكائن فارغ. الوصول إلى حقل كائن فارغ أو تعديله.
هل الاستثناء يمسك جميع الاستثناءات؟
بما أن الاستثناء هو الفئة الأساسية لجميع الاستثناءات ،سيصطاد أي استثناء.
لماذا لا تحصل على استثناء؟
catch (استثناء) هوممارسة سيئة لأنه يمسك كل RuntimeException (استثناء غير محدد) أيضًا. قد يكون هذا خاصًا بلغة جافا: في بعض الأحيان ستحتاج إلى استدعاء طرق ترمي الاستثناءات المحددة. إذا كان هذا في طبقة منطق EJB / الأعمال لديك خياران - قم بإمساكهم أو إعادة رميهم.