fbpx

تعلم لغة الجافا – الدرس الرابع عشر الاستثناءات Exceptions

0

يتم التعامل مع الاستثناءات باستخدام عبارات Try / catch. يجب أن تتبع جميع التعليمات البرمجية التي قد تؤدي إلى استثناء متطلبات Catch أو Specify. لاتباع هذا المطلب ، ما عليك سوى لف الكود الذي قد يلقي خطأ في كتلة المحاولة.

إذا لم تكن مناسبة لسبب ما أو لم تتمكن من استخدام المحاولة / الالتقاط ، يجب عليك تحديد جميع الاستثناءات التي يمكن أن ترميها الطريقة / الوظيفة باستخدام الكلمة الأساسية للرميات

public void writeFile() throws IOException

يمكنك أيضًا طرح استثناء في الكود باستخدام رمي جديد:

throw new IllegalArgumentException("Number not above 0");
/* Will print 
    Exception in thread "Main": java.lang.IllegalArgumentException: Number not above 0
*/

تتم معالجة الاستثناءات باستخدام try / catch ، والتي يتم تناولها في درس سابق:

try {
    System.out.println(arr[10]);
catch (ArrayIndexOutOfBoundsException ex) {
    System.out.println("Error in try block");
}

تمرين

اكتب رمزًا في البرنامج التعليمي لإلقاء IllegalArgumentException إذا (n <0). يجب أن تظهر “خطأ” كتوصيف. تلميح: انظر إلى الناتج المتوقع ، وفي مقتطف الرمز الثاني

	public class Main {
		public static void main(String[] args) {
			int n = -1;
		}
	}

الحل

	public class Main {
		public static void main(String[] args) {
			int n = -1;
			if (n < 0) {
				throw new IllegalArgumentException("Error")
			}
		}
	}

سنحصل على النتيجة التالية عند التشغيل

Main.java:5: error: ';' expected
				throw new IllegalArgumentException("Error")
				                                           ^
1 error

اترك رد

لن يتم نشر عنوان بريدك الإلكتروني.