ال

الوراثة في Java

1 تمرين

نبذة عن الوراثة

الوراثة

تدعم Java الوراثة كوظيفة أساسية، وتُستخدم لتحقيق الكثير من مبادئ البرمجة الكائنية مثل التجريد.

يمكن لصنف أن يمتد من صنف آخر باستخدام الكلمة المفتاحية extends، وأن يرث من واجهة باستخدام الكلمة المفتاحية implements.

محددات الوصول

تحدد محددات الوصول قواعد لمتغيرات الأعضاء وطرق الصنف فيما يتعلق بالوصول إليها من أصناف أخرى (أو من أي مكان في الكود).

توجد أربعة محددات وصول:

  • private
  • public
  • protected
  • الافتراضي (لا يلزم وجود كلمة مفتاحية)

يمكنك قراءة المزيد عنها في هذا المقال

الوراثة مقابل التركيب

هذان المفهومان متشابهان جدًا وكثيرًا ما يُخلط بينهما.

  • تعني الوراثة أن للصنف الابن علاقة IS-A مع الصنف الأب.
interface Animal() {
    public void bark();
}

class Dog implements Animal {
    public void bark() {
        System.out.println("Bark");
    }
}

هنا، Dog يحقق علاقة IS-A مع Animal

  • يمثل التركيب علاقة HAS-A.
interface Engine {

}

class Car {
    private Engine engine;
}

هنا، Car يحقق علاقة HAS-A مع Engine

تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة

تعلّم الوراثة