ماهي الفائدة من جعل الكلاس abstract

  • zymawy

السلام عليكم ورحمة الله وبركاته

دائما اتسأل ماهي الفائدة من اضافة خاصية abstract للكلاس

ولا استطيع استخدام دوالها حتى

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

ahmedsaoud31 أضف ردا
  • من ترجمة المصطلح وهو مجرد أي أن الفئة مجردة من عملها الوظيفي

  • تستخدم لتعريف النمط المراد اتباعه في الفئات بشكل اجباري

  • بمعنى أن الفئة المجردة تكون بمثابة خطوط حمراء يجب مراعاتها عند كتابة الفئات التي ترث الفئات المجردة

فلنأخذ مثال:

  • لدينا فئه مجردة باسم banq سنعرف داخلها طريقتين مجردتين هما ايداع deposit واخرى withdrowal سحب.

  • هذه الفئة سيتم وراثتها من عده بنوك وكل البنوك تحتوي على خواص السحب والإيداع ولكن بنسب عمولة مختلفة من بنك لأخر وعليه سيتم إجبار استخدام طريقة السحب والإيداع بنفس الاسماء والتعريف الموجود في الفئة المجردة لإجبار استخدام هذا الشكل لجميع الفئات التي ترث الفئة المجردة banq.

ججميل ششرح وافي وكافي

الفائدة من ذلك هو دعم مفهوم polymorphism

والذي يعني استخدام أشكال عديدة من method واحدة .

أيضاً هو يستخدم ك place holder للدوال التي سيتم تعريفها بشكل كامل بوقت لاحق .

ولا استطيع استخدام دوالها حتى

انت تستطيع استخدام (abstract methods)في derived classes of abstract base class

بشرط اعطائها تعريفات مختلفة في كل من الكلاسات المتوارثة. وذلك يوفر الوقت والجهد لتكرار الكتابة .

مثلاً انت تريد حساب المساحة للأشكال الهندسية تستطيع ان تعرف :

} Public abstract class Shape

Public abstract double area

{;{}

يمكنك بسهوله الاستفاده من هذا الكلاس وجميع دواله بعد عملية التوارث وإعطاء الدوال التي ستحتاجها التعريفات اللازمة بحساب مساحة الدائرة ،المثلث ،المربع ...وغيرها

zymawy أضف ردا

ججميل ششرح وافي وكافي