توابع همنام در کلاس های پایه و مشتق

از ویکی جامع پردیس دانشگاهی دانشگاه قم
پرش به: ناوبری، جستجو
برنامه نویسی پیشرفته
مقاله بعدی:وراثت چندگانه
مقاله قبلی:ارسال پارامترها به سازنده های کلاس پایه


توابع همنام در کلاس های پایه و مشتق:

کلاس های پایه و مشتق می توانند توابع همنام داشته باشند. اگر تعداد پارامترها و نوع آنها نیز متفاوت باشد، ولی نام آن ها یکسان باشد، باز هم توابع همنام در نظر گرفته می شوند. به عنوان مثال، فرض کنید کلاس پایه ای به employee دارای تابع عضوی به نام show() باشد که اطلاعاتی را به خروجی می برد. علاوه بر این فرض کنید، کلاس hourlyEmployee از کلاس Employee مشتق می شود و متدی به نام show() برای چاپ اطلاعات دارد. در این صورت کلاس hourlyEmployee متد show() کلاس پایه را به ارث نمی برد و در داخل اشیای کلاس مشتق، از تابع show() مخصوص خود استفاده می شود. اما در صورت لزوم می توان در داخل کلاس hourlyEmployee تابع عضو show() مربوط به کلاس پایه را به صورت زیر فراخوانی کرد:

Employee::show()

عملگر (::) عملگر تعیین حوزه نامیده می شود.