Javaالدالة close() الموجودة في الكلاس Scanner في جافا
تعريفها
تغلق الكائن Scanner, أي تمنع إدخال أي بيانات جديدة في البرنامج عن طريق كائن الـ Scanner.
من المهم جدا إغلاق كائن الـ Scanner عند الإنتهاء منه حتى تضمن عدم حدوث أي مشكلة في حال إستخدمت كلاس أو إنترفيس آخر في البرنامج يستخدم بدوره الكلاس Scanner.
بناؤها
باراميترات
لا تقبل أي باراميتر.
قيمة الإرجاع
لا ترجع قيمة.
في المثال التالي سيطلب البرنامج من المستخدم إدخال عمره و وظيفته, بعدها سيقوم بعرض المعلومات التي قام بإدخلها.
المثال الأول
سنحصل على النتيجة التالية عند التشغيل إذا قمنا بإدخال نفس المعلومات التي أدخلناها عند تشغيل البرنامج.
قمنا بتعليم البيانات التي إنتظرنا البرنامج لإدخالها من لوحة المفاتيح باللون الأصفر.
Enter your job: Programmer
----------- User Info ------------
Name: Mhamad Harmush
Job: Programmer
المثال التالي هو نفس المثال السابق و لكننا قمنا بإغلاق كائن الـ Scanner بعد إدخال الإسم, الأمر الذي سيؤدي إلى حدوث خطأ منطقي أثناء تشغيل البرنامج لأنه سيجد أنك حاولت إدخال بيانات في حين أنك قمت بإغلاق كائن الـ Scanner الذي يسمح بإدخال البيانات.
المثال الثاني
سيتوقف البرنامج و يظهر الخطأ التالي عند تشغيل البرنامج.
قمنا بتعليم البيانات التي إنتظرنا البرنامج لإدخالها من لوحة المفاتيح باللون الأصفر.
Exception in thread "main" java.lang.IllegalStateException: Scanner closed
Enter your job: