الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال عن virtual و overriden , adstract

بدأه katras في 20 يوليو 2011 · 1 رد · 433 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

ممكن مساعده لم استطع افهم كيف نستخدم virtual و override و abstract ومثال بسيط للفهم

ان الله لا يضيع اجر من احسن عملا

#2

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

اخي تستخدم كلمة vrtual في الفئة الأب للدلالة ان الدالة وهمية بمعنى اخر ان الدالة موجودة في الاب ولكن لا يستطيع تعريفها, لذا نحتاج override لإعادة تعريفها في فئات الابناء, شوف المثال التالي


public class Shape
{
public virtual double Area()
{
//Area calculation 'll be here;
return 0;
}
}

class Circle:Shape
{
int radius;
public override double Area()
{
return Math.PI*radius*radius;
}

فنلاحظ من المثال السابق تم تعريف الدالة Area كدالة وهمية في الفئة شكل, طبعا اكيد وهمية لاننا لا نقدر التنبأ بكودها, اما في الفئة دائرة تم اعادة صياغة حساب المساحه

اما بالنسبة للـ abstract تستخدم لتعريف فئة مجرده بمعنى اخر لايمكن انشاء كائن منها ولكن تستوجب الوراثه, شوف المثال التالي


abstract class Employee
{
public abstract decimal CalculateSalary();
}
class PermanentEmployee:Employee
{
public override decimal CalculateSalary()
{}
}
}

فتم تعريف الفئة موظف كفئة مجردة لأن الموظف اما ان يكون موظف دائم او بالساعات

2

.:: Wish to become better and better ::.

مواضيع مشابهة