فهرس المقرر
تقييم

تقييم الدرس 5: محددات الوصول Access Modifiers

إجاباتك تُحفظ تلقائيًّا على هذا الجهاز. أجب ثم اضغط «صحّح ورقتي» أسفل كل قسم.

privatedefaultprotectedpublic

← العودة إلى الدرس 5: محددات الوصول Access Modifiers · أسئلة التقييم · أكمل الفراغات · تمارين UML

أسئلة التقييم

أسئلة تقييم الدرس: محددات الوصول Access Modifiers. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».

1السؤال الأول: اختر الإجابة الصحيحة

1) في جافا، هل يمكن استخدام private كمحدد وصول access modifier للفئة class
snippet
private class Person{}
2) ما هو الفرق بين public و private في Java؟
3) ما هي أنواع Java Access Modifiers الرئيسية؟
4) أي من الكلمات المفتاحية التالية تسمح بالوصول إلى أحد مكونات الكلاس من كلاس آخر في نفس الحزمة (package)؟
5) ما هو الغرض من استخدام الكلمة المفتاحية private في Java؟
6) أكمل الفراغ: إذا أنشئت نسخة objectمن كلاس، وكان أحد خصائص الكلاس أو وظائفه أو دالة البناء معرفة كـ ........ فيمكن الوصول لها فقط من داخل الحزمة، و من خارج الحزمة ولكن بالوراثة
7) أكمل الفراغ: إذا أنشئت نسخة objectمن كلاس، وكان أحد خصائص الكلاس أو وظائفه أو دالة البناء معرفة كـ ........ يمكن الوصول لها من داخل الحزمة فقط. ولا يمكن الوصول إليه من خارجها. إذا لم تحدد أي مستوى وصول ، فسيكون هو المستوى الافتراضي.
8) أكمل الفراغ: إذا أنشئت نسخة objectمن كلاس، وكان أحد خصائص الكلاس أو وظائفه أو دالة البناء معرفة كـ ........ فيمكن الوصول لها فقط من داخل الكلاس الذي تم تعريفها فيه، ولا يمكن الوصول إليه من خارج classبأي طريقة
9) أكمل الفراغ: إذا جعلت دالة البناء "المشيد" constructorللـ class من نوع .........، فلا يمكنك إنشاء كائنات من ذلك الكلاس من خارج الكلاس.
10) أكمل الفراغ: تساعد .......... في Javaعلى تقييد نطاق كل من، وطريقة الوصول إلى كل من:
snippet
 class, constructor, method, or data member (attributes)
11) أكمل الفراغ: إذا أنشئت نسخة objectمن كلاس، وكان أحد خصائص الكلاس أو وظائفه أو دالة البناء معرفة كـ ........ فيمكن الوصول إليها من أي مكان من داخل class نفسه أومن خارجه، ومن داخل الحزمة نفسها أو من خارجها.
12) في جافا، ما هو الوضع الافتراضي لمحدد الوصول Access Modifier للمتغير أو للدالة؟
13) أي modifier يعتبر الأكثر تقييداً (الأكثر حماية)؟
14) أي modifier يعتبر الأقل تقييداً (الأكثر انفتاحاً) يمكن الوصول إليه من أي مكان؟
15) كلاس class في حزمة أخرى ولا يرث الكلاس الأصلي، يستطيع الوصول إلى الأعضاء المعرّفة كـ:

2السؤال الثاني: صح أم خطأ

1) المحدد protected يسمح بالوصول من حزمة package أخرى عن طريق الوراثة. صح أم خطأ؟
الصواب: صح
2) المحدد public أضيق من protected. صح أم خطأ؟
الصواب: خطأ

3السؤال الثالث: أكمل الفراغات

1) المحدد الذي يتيح الوصول من أي مكان: .

💡 المحدد الأوسع: من أي مكان.

الإجابة: public

2) المحدد الذي يقصر الوصول على الكلاس نفسه: .

💡 المحدد الأضيق: الكلاس نفسه فقط.

الإجابة: private

3) المحدد الافتراضي يتيح الوصول داخل فقط.

💡 المجلد الذي يجمع الكلاسات.

الإجابة: الحزمة

4) المعدّلات نوعان: وصول و وصول.

💡 معدّلات ___ الوصول، مثل static و final.

الإجابة: عدم

4السؤال الرابع: التوصيل

طابِق كل عنصر في العمود (أ) بما يناسبه في العمود (ب):

  1. 1) public
  2. 2) private
  3. 3) protected
  4. 4) default
  5. 5) static
  1. أ. الكلاس فقط.
  2. ب. الحزمة فقط.
  3. ج. من أي مكان.
  4. د. الحزمة + الوراثة.
  5. هـ. معدّل عدم وصول.
المفتاح: (1) ج (2) أ (3) د (4) ب (5) هـ

5السؤال الخامس: أسئلة عملية

1) خاصية password في كلاس User. أي محدد أنسب؟

2) ClassC في package2 يرث ClassA من package1، ويريد قراءة f_protected. ما الطريقة الصحيحة؟

أجب عن الأسئلة ثم اضغط «صحّح ورقتي».

أكمل الفراغات

اختر الكلمة الصحيحة من القائمة المنسدلة في كل فراغ. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».

1السؤال الأول: أسئلة عملية

1)

انظر إلى الكلاس ClassA من التدريب 8، ثم أكمل محددات الوصول حسب التعليق بجانب كل سطر:

public class ClassA {     String f_public = "public";        // من أي مكان     String f_private = "private";      // داخل الكلاس فقط     String f_protected = "protected";  // الحزمة + الوراثة}
الإجابة: (1) public · (2) private · (3) protected
2)

أكمل الكود: الكلاس ClassC في الحزمة package2 يرث ClassA ويطبع f_protected

package package2; package1.ClassA;public class ClassC  ClassA {    public static void main(String[] args) {        ClassC obj = new ();        System.out.println(obj.f_protected);    }}
الإجابة: (1) import · (2) extends · (3) ClassC
أجب عن الأسئلة ثم اضغط «صحّح ورقتي».

تمارين UML

تمارين تفاعلية من أمثلة الدرس نفسه. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».

1السؤال الأول: أسئلة عملية

1) أكمل مخطط ClassA من التدريب 8: اختر محدد الوصول لكل خاصية حسب الكود.

«package1»ClassA
f_public : String
f_private : String
f_protected : String
f_default : String
showInfo() : void
العلاقة بين ClassC و ClassA:
العلاقة بين ClassB و ClassA:
المفتاح: + f_public : String · - f_private : String · # f_protected : String · ~ f_default : String · + showInfo() : void
أجب عن الأسئلة ثم اضغط «صحّح ورقتي».