سؤال آخر ميراث
-
30-09-2019 - |
سؤال
من البحث السريع في Google ومقال ويكيبيديا عن ميراث متعدد ، والذي يقتبس:
يشير الميراث المتعدد إلى ميزة لغات البرمجة الموجهة للكائنات التي يمكن للدراسة فيها أن يرث السلوكيات والميزات من أكثر من فئة فائقة. يتناقض هذا مع الميراث الفردي ، حيث قد يرث الفصل من فئة واحدة فائقة على الأكثر.
أنا أفهم أن PHP لا يسمح بالميراث المتعدد. ومع ذلك ، فإن ما لا يمكنني العثور عليه إجابة واضحة ، هو ما إذا كان يسمح لأكثر من فصل واحد بتمديد فئة فائقة. مثال:
class a {}
class b extends a {}
class c extends a {}
فيما يتعلق بما أحاول القيام به ، أقوم بعمل RPG وأريد فئة شخصية "عامة" لتشمل جميع الأساليب والخصائص التي تجعل قالب الشخصية. ثم أريد أن تتضمن الفصول تفاصيل لكل نوع من الأحرف (Warrior ، Mage ، إلخ) ، مثل المعدلات الإحصائية والهجمات الخاصة.
هل هذا ممكن؟
المحلول
نعم ، هذا ممكن تمامًا. الغرض الكامل من الميراث هو أن العديد من الأطفال يمكن أن يرثوا وظائف مشتركة من أحد الوالدين.
نصائح أخرى
نعم ، يمكن لفئات متعددة تمديد نفس الفئة ، وفقًا لمثال الكود الخاص بك.
هذا هو أساس OOP. انه ممكن.
نعم ، يمكن لأي فصل تمديد فئة أساسية. في مثالك ، لا يمكن فقط للفئة C تمديد كل من A و B.
لذلك في مثال معدّل مثل الموجود أعلاه
class a {}
class b extends a {}
class c extends b {}
ج لا يمكن أن تصل إلى خصائص أ؟