اقرأ في هذا المقال
- الـ Modifiers في لغة البرمجة جافا
- ما هي Access Modifiers في جافا؟
- ما هي Non Access Modifiers في جافا؟
الـ Modifiers في لغة البرمجة جافا:
الـ (Modifiers) في لغة البرمجة جافا عبارة عن كلمات يمكن للمستخدم إضافتها عند تعريف المتغيرات أو الدوال أو الكلاسات، وذلك لتحديد طريقة الوصول إليها، وتنقسم إلى نوعين رئيسين وهما:
- Access Modifiers.
- Non Access Modifiers.
ما هي Access Modifiers في جافا؟
الجدول التالي يحتوي على الكلمات التي تنتمي للـ (Access Modifiers):
Modifier | الاستخدام |
public | الكلاس أو الدالة أو المتغير الذي يتم تعريفه كـ (public) يمكن الوصول إليه مباشرة. |
protected | الدالة أو المتغير الذي يتم تعريفه باستخدام هذه ال(modifiers) فإنه يمكن الوصول إليه فقط من الكلاسات الموجودة في نفس الـ (package) أو من الكلاسات التي ترث منه بواسطة مفهوم (inheritance) |
private | يُعد هذا ال (modifier) هو أعلى مستوى من حيث الحماية؛ حيث أن المتغيرات والدوال التي يتم تعريفها كـ (private) يمكن الوصول لها فقط من داخل الكلاس الذي تم تعريفها فيه. |
الـ (Access Modifiers) تسمح للمستخدم بتطبيق مبدأ التغليف (Encapsulation) الذي يمكنك من إخفاء البيانات الأساسية في الكود التي لا تريد لأحد آخر أن يراها، وإذا لم يضع المبرمج أي كلمة من الـ (Access Modifiers) عند تعريف كلاس أو دالة أو متغير سيتم وضع (Modifier) افتراضي، والذي يسمى (package private)، وهذا يعني أنه يمكن الوصول إليه فقط من الكلاسات الموجودة في نفس الـ (package).
ما هي Non Access Modifiers في جافا؟
الجدول التالي يحتوي على الـ (Non Access Modifiers) الأكثر إستخداماً في لغة البرمجة جافا:
Modifier | الاستخدام |
static | يستخدم هذا النوع من (modifiers) لتعريف كلاس أو متغير أو دالة مشتركة بين جميع الكائنات من كلاس معين. |
final | يستخدم هذا النوع من (modifiers) لمنع الوراثة من كلاس معين أو لمنع كتابة محتوى الدالة أو تعديلها في الكلاس الذي يرثها، أو لجعل قيمة المتغير غير قابلة للتغيير بعد تحديدها. |
abstract | يستخدم لإنشاء كلاس أو دالة مجرد أي دالة لا تحتوي على كود، والهدف من هذا الـ (Modifier) هو تجهيز كلاس معين و جعل الكلاسات التي ترث من هذا الكلاس هي من تقوم بتعريف الأشياء الموجودة بداخله. |
وهناك أنواع أخرى من هذه ال (modifiers):
- synchronized.
- native.
- transient.
- volatile.