وراثت در برنامه نویسی

جمع کردن
X
 
  • زمان
  • نمایش
پاک کردن همه
پست‌های جدید
  • Amirio
    عضو متعهد
    • Feb 2013
    • 251

    #1

    وراثت در برنامه نویسی

    به نام خدا

    یکی از مهم ترین بحث ها در مبحث برنامه نویسی شی گرا 

    مبحث وارثت هست.

    امیدوارم بتونم نکات خوبی رو در این زمینه در اختیار شما عزیزان قرار بدم.

    فرض کنید کلاسی داریم که برای افرادی دارای حقوق پایه شرکت می باشد و  دارای اعضای داده ای زیر باشد:
    1. نام
    2. نام خانوادگی
    3.شماره پرسنلی
    4. حقوق پایه

    حالا اگر کلاس دیگری داشته باشیم که علاوه بر حقوق پایه ، دارای حقوق اضافه کاری نیز باشد ، دارای اعضای داده ای زیر هست:
    1.نام
    2.نام خانوادگی
    3.شماره پرسنلی
    4.حقوق پایه
    5.حقوق بر حسب هر ساعت اضافه کاری

    همان طور که مشاهده میکنید ما برای دوکلاسی که فقط در یک عضو داده ای فرق میکنند 4 عضو داده ای مشترک تعریف کردیم که هنگام استفاده از کلاس و ساختن یک شی از این کلاس کار اضافه ای انجام داده ایم.

    برای کم کردن این کار اضافه از وراثت استفاده میکنیم.

    به طور مثال ک کلاس به صورت کلاس کارمند تعریف کرده و با اعضای داده ای زیر:
    1. نام
    2.نام خانوادگی
    3.شماره پرسنلی
    4. حقوق پایه

    و حال کلاسی که دارای حقوق اضافه کاری هستند را از این کلاس به ارث می بیریم. 

    این چنین:

    1. کارمند
    2. حقوق بر حسب ساعت اضافی.

    به طوری که کلاس دوم فقط دارای 1عضو دادی ای می باشد.


    اموزش کد نویسی این مبحث رو در تاپیک های بعدی در خدمت شما هستیم ان شا الله.
    [align=center]وما توفيقي الا بالله
  • Amirio
    عضو متعهد
    • Feb 2013
    • 251

    #2
    RE: وراثت در برنامه نویسی

    کلاس کارمند:[php]class Employee{

    public:
               Employee();
               ~Employee();
    private:
                int number;
                string name, last name;
                int salary;
    };[/php]
    [align=center]وما توفيقي الا بالله

    نظر

    • Amirio
      عضو متعهد
      • Feb 2013
      • 251

      #3
      RE: وراثت در برنامه نویسی

      کلاس کارمند با حقوق اضافه کاری:[php]class EmployeeH : public Employee{

      public:
               EmployeeH();
               ~EmployeeH();

      private:
               int H_Salary;
      };[/php]

      خط اول این کلاس گویای این موضوع است که این کلاس، از کلاس کارمند به صورت پابلیک ارث بری میکند و اعضای داده این کلاس را در خود دارد.

      مبحث ارث بری توابع را نیز به همین صورت اموزش خواهیم داد. ان شا الله
      [align=center]وما توفيقي الا بالله

      نظر

      در حال کار...