OsamaSaif نشر 2 نوفمبر 2015 أرسل تقرير نشر 2 نوفمبر 2015 متى أكون بحاجة لتعريف Abstract Class وماهي الفائدة منه أرجو تزويدي بمثال اقتباس
0 Lujain Maaz نشر 3 نوفمبر 2015 أرسل تقرير نشر 3 نوفمبر 2015 تكمن أهمية الصفوف المجردة Abstract Classes في أنها يمكن أن تحتوي على توابع (دوال) لا تقوم بتنفيذ أي سلوك (contains no implementation) يتم تحديد السلوك في الصف الابن الذي يرث من الصف المجرد حيث يجبر الصف الابن على إعادة تعريف الدوال الموجودة في الصف المجرد وبالتالي تحديد السلوك الذي يتقوم بتنفيذه، قد تقول لي وما هي الفائدة؟لنفرض أنه لديك مجموعة من الكائنات تشترك بسلوكيات معينة ولكنها تختلف بطريقة تطبيق هذا السلوك مثلًا: أغلب الكائنات الحية تنتقل من مكان لآخر(السلوك هو الانتقال ) ولكن طريقة الانتقال تختلف فالأسماك مثلًا تسبح والطيور تطير والنمر يمشي أو يركض ..الخ، إن أردنا إسقاط هذا المثال على البرمجة وبرمجة تطبيق يقوم بتحديد سلوك انتقال كائن ما كيف سيتم ذلك؟الحل الأمثل نقوم بإنشاء صف مجرد Abstract Class يحوي على دالة مجردة Abstract Function مثلًا move: public abstract void move();ثم إنشاء صف لكل كائن يرث من الصف المجرد Abstract Class ويحدد نوع السلوك الذي ينفذه في الدالة:move()1-Class Bird public override void move() { Console.WriteLine("I'm bird I can fly"); }2- Class Fish public override void move() { Console.WriteLine("I'm fish I can swim"); } متى أكون بحاجة لتعريف Abstract Class وماهي الفائدة منه؟ اقتباس
السؤال
OsamaSaif
متى أكون بحاجة لتعريف Abstract Class وماهي الفائدة منه أرجو تزويدي بمثال
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.