چندریختی (برنامه‌نویسی): تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
ابرابزار
جز جایگزینی با اشتباه‌یاب: شئ⟸شیء، پارمترهای⟸پارامترهای
خط ۱۲:
 
:چندریختی به معنای چندین شکل از یک متد است. مفهوم چندریختی اغلب به وسیلهٔ عبارت «یک رابط، چند متد» بیان می‌شود. این بدین معناست که این امکان وجود دارد که یک رابط عمومی برای گروهی از فعالیت‌های مرتبط به هم طراحی شود.
در برنامه‌های شئشیء گرا مانند [[جاوا (زبان برنامه‌نویسی)|جاوا]]، این امکان فراهم شده تا دو یا بیش از دو متد همنام در یک کلاس تعریف نمود،
مشروط بر اینکه تعریف پارامترهای آن متفاوت باشد. در این موارد متدها سربار می‌شوند.
از چندریختی به منظور تعیین انواع مختلف متدهای پویا، در زمان اجرا استفاده می‌شود؛ که این یکی از قدرتمندترین امکاناتی است که چندریختی به وجود می‌آورد.
خط ۳۴:
== سربار کردن متدها ==
=== تعریف و چگونگی انجام آن ===
:در [[زبان‌های برنامه‌نویسی]] شیءگرا مانند جاوا می‌توانیم دو ویا بیشتر از دو متد همنام را در یک کلاس تعریف نماییم (با شرط آنکه پارمترهایپارامترهای آن را متفاوت تعریف نماییم). به این فرایند سربار شده کردن متدها گفته می‌شود. این فرایند یکی از روش‌هایی است که جاوا از طریق آن از چند ریختی پشتیبانی می‌کند.
:وقتی متد سربار شدهشده‌ای فعال می‌شود، جاوا از نوع یا تعداد آرگومان‌ها برای تعیین اینکه کدام نگارش از متدها ی سربار شده فراخوانده شده‌است، استفاده می‌کند. از این رو متدهای سربار شده از جهت نوع و تعداد پارامترها با یکدیگر تفاوت دارند.
:اگرچه نوع مقادیری که این متدها برمی‌گردانند ممکن است متفاوت باشد، اما نوع مقادیر به تنهایی برای تمایز بین آن‌ها کفایت نمی‌کند. وقتی که جاوا با عبارت فراخوانی این گونه متدها مواجه می‌شود، متدی را اجرا می‌کند که پارامترهای آن با آرگومان‌های مورد استفاده در عبارت فراخوانی مطابقت داشته باشد.