استثناءات Javaخطأ
ConcurrentModificationExceptionConcurrentModificationException
تُعدَّل مجموعة أثناء التكرار عليها.
jvmandroidspring
أسباب هذا الخطأ
تُجرى تعديل هيكلي (إضافة أو حذف) على مجموعة أثناء التكرار باستخدام حلقة for-each أو iterator. قد يحدث هذا في الكود أحادي الخيط عند تعديل المجموعة داخل حلقتها الخاصة.
كيفية الإصلاح
استخدم Iterator.remove() لحذف العناصر بأمان أثناء التكرار. استخدم ConcurrentHashMap أو CopyOnWriteArrayList للوصول المتزامن. اجمع العناصر المراد حذفها في قائمة منفصلة واحذفها بعد اكتمال التكرار.
مثال
for (String s : list) {
list.remove(s); // CME
}رموز أخطاء ذات صلة
استثناءات Javaخطأ
MissingResourceExceptionMissingResourceException
لا يمكن العثور على حزمة الموارد أو مفتاح المورد.
jvmandroid
عرض التفاصيل استثناءات Javaخطأ
IOExceptionIOException
تفشل عملية I/O أو تُقاطع.
jvmandroidspring
عرض التفاصيل استثناءات Javaخطأ
NullPointerExceptionNullPointerException
تُستخدم مرجعية null في مكان يتطلب كائناً.
jvmandroidspring
عرض التفاصيل استثناءات Javaخطأ
IllegalMonitorStateExceptionIllegalMonitorStateException
محاولة خيط تنفيذ عملية على المراقب (wait, notify) دون امتلاكه مراقب الكائن.
jvmandroid
عرض التفاصيل استثناءات Javaخطأ
NumberFormatExceptionNumberFormatException
لا يمكن تحليل سلسلة نصية كرقم.
jvmandroidspring
عرض التفاصيل استثناءات Javaخطأ
IllegalAccessExceptionIllegalAccessException
محاولة الوصول إلى صنف أو حقل أو دالة لا تملك الكود صلاحية الوصول إليها.
jvmandroidspring
عرض التفاصيل