التعامل مع الفئات الداخلية Inner Class
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: أساسيات اللغة Java Basics
صفحة 1 من اصل 1 • شاطر
التعامل مع الفئات الداخلية Inner Class
أهلا بكم
الفئات الداخلية #Inner_classes أو الفئات المتداخلة #nested_classes هى الفئات التى يتم بنائها بداخل فئة اخري وتسمى الفئة التي تحمل الفئة الداخلية بالفئة الخارجية #outer_class ... والفئة الداخلية Inner_class لها علاقة خاصة مع الفئة الخارجية. تتيح هذه العلاقة الخاصة للفئة الداخلية الوصول إلى عنصر من الفئة الخارجية كما لو كانت جزءًا من الطبقة الخارجية.
تنقسم الفئات الداخلية إلى نوعين -
فئات متداخلة غير ثابتة - Non-static nested classes
فئات متداخلة ثابتة - Static nested classes
ملاحظة: تتمتع فئة #Inner_class بحق الوصول إلى جميع أعضاء الفئة الخارجية (العامة والخاصة والمحمية)
بناء جملة لإنشاء Inner Class
كيفية الوصول إلى الطبقة الداخلية
لا يمكن الوصول إلى الطبقة الداخلية إلا من خلال نسخة من الطبقة الخارجية...وذلك فى حالتين :
1_الوصول للفئة الداخلية من داخل الفئة الخارجية :
يمكن للفئة الخارجية إنشاء مثيل للفئة الداخلية بنفس طريقة الفئة العادية...وذلك على النحو التالى :
2__الوصول للفئة الداخلية من خارج الفئة الخارجية :
قم بإنشاء مثيل فئة خارجية ثم مثيل فئة داخلية
يمكن أيضا استبدال رمز أعلاه مع الرمز التالى :
محدادت الوصول
ستتم معاملة الطبقة الداخلية العادية كعضو في الطبقة الخارجية بحيث يمكن أن تحتوي على عدة محدادات الوصول على النحو التالى :
الفئات الداخلية #Inner_classes أو الفئات المتداخلة #nested_classes هى الفئات التى يتم بنائها بداخل فئة اخري وتسمى الفئة التي تحمل الفئة الداخلية بالفئة الخارجية #outer_class ... والفئة الداخلية Inner_class لها علاقة خاصة مع الفئة الخارجية. تتيح هذه العلاقة الخاصة للفئة الداخلية الوصول إلى عنصر من الفئة الخارجية كما لو كانت جزءًا من الطبقة الخارجية.
تنقسم الفئات الداخلية إلى نوعين -
فئات متداخلة غير ثابتة - Non-static nested classes
فئات متداخلة ثابتة - Static nested classes
ملاحظة: تتمتع فئة #Inner_class بحق الوصول إلى جميع أعضاء الفئة الخارجية (العامة والخاصة والمحمية)
بناء جملة لإنشاء Inner Class
- الكود:
//outer class
class OuterClass {
//inner class
class InnerClass {
}
}
كيفية الوصول إلى الطبقة الداخلية
لا يمكن الوصول إلى الطبقة الداخلية إلا من خلال نسخة من الطبقة الخارجية...وذلك فى حالتين :
1_الوصول للفئة الداخلية من داخل الفئة الخارجية :
يمكن للفئة الخارجية إنشاء مثيل للفئة الداخلية بنفس طريقة الفئة العادية...وذلك على النحو التالى :
- الكود:
class OuterClass {
private int i = 9;
// Creating instance of inner class and calling inner class function
public void createInner() {
InnerClass i1 = new InnerClass();
i1.getValue();
}
// inner class declarataion
class InnerClass {
public void getValue() {
// accessing private variable from outer class
System.out.println("value of i -" + i);
}
}
}
2__الوصول للفئة الداخلية من خارج الفئة الخارجية :
قم بإنشاء مثيل فئة خارجية ثم مثيل فئة داخلية
- الكود:
class MainClass {
public static void main(String[] args) {
// Creating outer class instance
OuterClass outerclass = new OuterClass();
// Creating inner class instance
OuterClass.InnerClass innerclass = outerclass.new InnerClass();
// Classing inner class method
innerclass.getValue();
}
}
يمكن أيضا استبدال رمز أعلاه مع الرمز التالى :
- الكود:
OuterClass.InnerClass innerClass = new OuterClass.new InnerClass();
محدادت الوصول
ستتم معاملة الطبقة الداخلية العادية كعضو في الطبقة الخارجية بحيث يمكن أن تحتوي على عدة محدادات الوصول على النحو التالى :
- final
- abstract
- public
- private
- protected
زهراء- ........
- تاريخ التسجيل : 18/02/2011
المساهمات : 438
النقاط : 769
التقيم : 67
الدولة :
الجنس :
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: أساسيات اللغة Java Basics
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
أمس في 9:18 pm من طرف wdqwd
» رش الدفان بالرياض
أمس في 7:11 pm من طرف moslema_r
» شركة تنظيف خزانات الشارقة
أمس في 6:57 pm من طرف moslema_r
» شركة مكافحة الفئران بالرياض
الإثنين أبريل 15, 2024 8:23 pm من طرف moslema_r
» افضل شركة كشف تسربات المياه بالباحة
الخميس أبريل 04, 2024 7:02 am من طرف gmalnagy
» ساعدوني وفهموني help me
الجمعة مارس 29, 2024 8:37 am من طرف linesoft
» كشف تسربات المياه في جدة
السبت مارس 23, 2024 7:23 pm من طرف gmalnagy
» خدمات كشف تسربات المياه بخصم 25% - اتصل الان
السبت مارس 23, 2024 7:22 pm من طرف gmalnagy
» كهربائي منازل بالرياض
الأحد مارس 17, 2024 1:52 pm من طرف رانيا حماد
» افضل شركة نقل عفش بالرياض نقل باكستاني 40% خصم | موقع الانوار
الأحد مارس 17, 2024 1:25 pm من طرف رانيا حماد