خلاصة الدرجة مقابل الميراث
 

يُعد كل من الخلاصة المجردة والوراثة مفهومين مهمين للكائن الموجودين في العديد من لغات البرمجة الموجهة للكائنات مثل Java. يمكن اعتبار الفصل التجريدي كنسخة مجردة من الفصل العادي (الملموس) ، بينما يسمح الوراثة للفصول الجديدة بتوسيع الفصول الأخرى. فئة الملخص هي فئة لا يمكن تهيئتها ولكن يمكن تمديدها. لذلك ، فصول الملخص هي فقط ذات معنى إذا كانت لغة البرمجة تدعم الوراثة. في Java ، يتم تعريف فئات Abstract باستخدام الكلمة الأساسية Abstract ، بينما يتم استخدام الكلمة الأساسية Extends للوراثة من فئة (فائقة).

ما هي فئة الملخص؟

عادةً ، لا يمكن إنشاء مثيل لفئات الملخصات ، والمعروفة أيضًا باسم فئات الأساس المجردة (ABC) (لا يمكن إنشاء مثيل لتلك الفئة). لذلك ، فإن فئات الملخصات تكون ذات معنى فقط إذا كانت لغة البرمجة تدعم الوراثة (القدرة على إنشاء فئات فرعية من تمديد فئة). تمثل فئات الملخصات عادةً مفهومًا أو كيانًا مجردة مع تنفيذ جزئي أو بدون تطبيق. لذلك ، تعمل فئات الخلاصة كصفوف رئيسية يتم اشتقاق الطبقات الفرعية منها حتى يتمكن الفصل الفرعي من مشاركة الميزات غير المكتملة للفئة الأصل ويمكن إضافة وظائف لإكمالها.

قد تحتوي فئات الملخصات على طرق الملخص. قد تقوم الفئات الفرعية التي تمتد لفئة تجريدية بتنفيذ طرق الملخص (الموروثة). إذا كانت الطبقة الفرعية تنفذ جميع هذه الأساليب المجردة ، فهي فئة ملموسة. ولكن إذا لم يحدث ذلك ، فإن الفصل الفرعي يصبح أيضًا فصل دراسي. ما يعنيه كل هذا هو أنه عندما يقوم المبرمج بترشيح الفصل كملخص ، فإنها تقول إن الفصل سيكون غير مكتمل وسيكون له عناصر تحتاج إلى إكمالها بواسطة الفئات الفرعية الموروثة. هذه طريقة لطيفة لإنشاء عقد بين اثنين من المبرمجين ، مما يبسط المهام في تطوير البرمجيات. على المبرمج ، الذي يكتب التعليمات البرمجية الموروثة ، أن يتبع تعريفات الطريقة تمامًا (ولكن بالطبع يمكن أن يكون لها تطبيق خاص بها).

ما هو الميراث؟

الوراثة هو مفهوم وجوه المنحى ، والذي يسمح لفئات جديدة لتوسيع فئات أخرى. يتم استخدام الكلمة الأساسية الموسعة لتطبيق مفهوم الميراث في لغة برمجة جافا. يوفر الوراثة بشكل أساسي إعادة استخدام التعليمات البرمجية عن طريق السماح بتوسيع خصائص وسلوك فئة موجودة بواسطة فئة معرفة حديثًا. عندما تقوم فئة فرعية جديدة (أو فئة مشتقة) بتوسيع فئة فائقة (أو فئة رئيسية) سترث هذه الفئة الفرعية جميع سمات وطرق الفئة الفائقة. يمكن للفئة الفرعية اختيارياً تجاوز السلوك (توفير وظائف جديدة أو موسعة للأساليب) الموروثة من الفئة الأصل. عادةً ، لا يمكن للفئة الفرعية تمديد فئات فائقة متعددة (على سبيل المثال في Java). لذلك ، لا يمكنك استخدام يمتد لميراث متعددة. من أجل الحصول على الوراثة المتعددة ، تحتاج إلى استخدام واجهات.

ما هو الفرق بين الخلاصة والوراثة؟

تمثل فئات الملخصات عادةً مفهومًا تجريديًا أو كيانًا به تطبيق جزئي أو بدون تطبيق. الوراثة يسمح الطبقات الجديدة لتوسيع فئات أخرى. نظرًا لأنه لا يمكن إنشاء فئات الملخصات ، يجب استخدام مفهوم الميراث للاستفادة من فئات الملخص. خلاف ذلك ، فئة الملخص ليس لها أي فائدة. قد تحتوي فئات الملخصات على طرق الملخص وعند تمديد الفصل ، يتم توريث جميع الطرق (الملخص والخرسانة). يمكن للفئة الموروثة تنفيذ أي أو كل الطرق. إذا لم يتم تنفيذ جميع أساليب الملخص ، تصبح هذه الفئة أيضًا فئة ملخص. لا يمكن أن يرث الفصل الدراسي من أكثر من فئة الملخص (هذه ليست نوعية من فئات الملخص في حد ذاته ، بل هي تقييد للتوريث).