وراثت (Inheritance یا ارث بری) در سی شارپ

وراثت (Inheritance یا ارث بری) در سی شارپ

زمان مطالعه

3 دقیقه

تعداد بازدید

140

تعداد پرسش ها

0

افزودن به لیست علاقه مندی ها


برچسب ها :


اشتراک گذاری این مطلب

وراثت یا ارث بری (Inheritance) در سی شارپ

در سی شارپ می توان فیلدها و متدها را از یک کلاس به کلاس دیگر به ارث برد. ما "مفهوم وراثت" را به دو دسته تقسیم می کنیم:

کلاس مشتق شده (فرزند) - کلاسی که از کلاس دیگر ارث بری می کند 
کلاس پایه (والد) - کلاسی که از آن به ارث می رسد
برای به ارث بردن از یک کلاس ، از نماد استفاده کنید.

در مثال زیر ، کلاس Car (فرزند) فیلدها و متدها را از کلاس Vehicle (پدر) به ارث می برد:

class Vehicle  // base class (parent) 
{
  public string brand = "Ford";  // Vehicle field
  public void honk()             // Vehicle method 
  {                    
    Console.WriteLine("Tuut, tuut!");
  }
}

class Car : Vehicle  // derived class (child)
{
  public string modelName = "Mustang";  // Car field
}

class Program
{
  static void Main(string[] args)
  {
    // Create a myCar object
    Car myCar = new Car();

    // Call the honk() method (From the Vehicle class) on the myCar object
    myCar.honk();

    // Display the value of the brand field (from the Vehicle class) and the value of the modelName from the Car class
    Console.WriteLine(myCar.brand + " " + myCar.modelName);
  }
}

چرا و چه زمانی باید از "وراثت" استفاده کرد؟

وراثت برای استفاده مجدد کد مفید است: هنگام ایجاد کلاس جدید ، از فیلدها و متدهای کلاس موجود استفاده مجدد کنید.

نکته: همچنین نگاهی به درس بعدی ، چند شکلی (polymorphism) بیندازید که از متدهای ارثی برای انجام کارهای مختلف استفاده می کند.

 

کلمه کلیدی sealed

اگر نمی خواهید کلاس های دیگر از یک کلاس به ارث برده شوند ، از کلمه کلیدی sealed استفاده کنید:

sealed class Vehicle 
{
  ...
}

class Car : Vehicle 
{
  ...
}

 


پرسش و پاسخ
0
دوره پیشنهادی
دوره پیشنهادی