تخطَّ إلى المحتوى

🧩 شرح البرمجة كائنية التوجّه

this و super

الدرس 18 من 25· ⏱ 1 دقائق قراءة

this (أو self)

تشير إلى الكائن الحالي — للوصول لخصائصه وطرقه:

class Person:
    def __init__(self, name):
        self.name = name        # self = الكائن الحالي
    def rename(self, name):
        self.name = name
// Java — this يحلّ التعارض بين المعامل والحقل
class Person {
    String name;
    Person(String name) {
        this.name = name;       // this.name الحقل، name المعامل
    }
}

super

تشير إلى الصنف الأب — لاستدعاء بانيه أو طرقه:

class Animal:
    def __init__(self, name):
        self.name = name

class Dog(Animal):
    def __init__(self, name, breed):
        super().__init__(name)   # باني الأب
        self.breed = breed
class Dog extends Animal {
    Dog(String name) {
        super(name);             // باني الأب
    }
    String sound() {
        return super.sound() + " نباح";   // طريقة الأب
    }
}

الخلاصة

  • this/self: الكائن نفسه.
  • super: الأب (لإعادة استخدام كوده وتوسيعه).

🎯 التالي: مبادئ SOLID.

هل كان هذا الدرس مفيدًا؟