چندریختی (برنامهنویسی): تفاوت میان نسخهها
محتوای حذفشده محتوای افزودهشده
Scholar.me (بحث | مشارکتها) |
Scholar.me (بحث | مشارکتها) بدون خلاصۀ ویرایش |
||
خط ۴:
یکی از ویژگیهای کلیدی در کلاسهای مشتقشده این است که یک اشارهگر به یک کلاس مشتقشده، از نظر نوع دادهای با اشارهگر به کلاس اصلی آن سازگار است. '''چندریختی''' یا پلیمورفیسم، هنر بهرهبرداری از این ویژگی ساده، اما قدرتمند و کاربردی است که متدلوژی شیگرایی را به حد کامل تواناییاش میرساند.<ref>{{یادکرد کتاب|عنوان=برنامه سازی پیشرفته با ++C|نام خانوادگی=دکتر بابک بشری راد|نام=|ناشر=ناقوس|سال=1394|شابک=978-964-377-746-3|مکان=تهران|صفحات=143}}</ref>
مفهوم چندریختی ویژگی است که به رابطها امکان میدهد تا برای گروهی از عملیاتها مورد استفاده قرار گیرند. در این مقاله مفهوم چندریختی از طریق دو مفهوم
روش به کار برده شده در این تحقیق از طریق مطالعه منابعی از جمله کتب مرتبط با برنامهنویسی، راهنمای برنامههای شیء گرا و اجرای برنامههایی با ماهیت چندریختی میباشد.
با توجه به مطالب ارائه شده در این مقاله میتوان گفت که مفهوم چندریختی یکی از سه اصول مهم در برنامهنویسی شیء گرا میباشد. درنتیجه مفاهیم نهان سازی و وراثت به همراه مفهوم چندریختی سه پایهٔ اصلی برنامهنویسی شی ء گرا را تشکیل میدهند.
کلمات کلیدی: چندریختی، سربار کردن,
:چندریختی به معنای چندین شکل از یک متد است. مفهوم چندریختی اغلب به وسیلهٔ عبارت «یک رابط، چند متد» بیان میشود. این بدین معناست که این امکان وجود دارد که یک رابط عمومی برای گروهی از فعالیتهای مرتبط به هم طراحی شود.
خط ۱۳:
مشروط بر اینکه تعریف پارامترهای آن متفاوت باشد. در این موارد متدها سربار میشوند.
از چندریختی به منظور تعیین انواع مختلف متدهای پویا، در زمان اجرا استفاده میشود؛ که این یکی از قدرتمندترین امکاناتی است که چندریختی به وجود میآورد.
:چنانچه نام و امضای متدی از یک زیر کلاس (در ساختار سلسله مراتبی کلاسها) با نام و نوع امضای متدی از فوق کلاسش یکسان باشد، در آن صورت متد موجود در زیر کلاس، متد موجود در فوق کلاسش را
مفاهیم سربار کردن و
در این مقاله پس از بررسی اجمالی مفهوم چندریختی در بخش اول، در بخش دوم مفهوم سربار کردن متدها را با ذکر چند مثال خواهیم دید. در بخش سوم نیز مفهوم متدهای
== مفهوم چندریختی ==
خط ۶۴:
</source>
===
=== تعریف و چگونگی انجام آن ===
:چنانچه نام و نوع امضای (هدر متد که از نام و پارامترها تشکیل میشود) متدی از یک زیر کلاس با نام و امضای متدی از فوق کلاسش یکسان باشد، در آن صورت اصطلاحاً میگوییم که متد موجود در زیرکلاس، متد موجود در فوق کلاس را
:وقتی متد
=== تعیین پویای متدها ===
:مکانیزم
:اینک کار خود را با بیان مجدد یک اصل مهم آغاز میکنیم: متغیرهای ارجاع فوق کلاسها میتوانند به شیءهای زیرکلاسها ارجاع داشته باشند. جاوا با استفاده از این امر، مسئلهٔ تعیین متدهای
:وقتی ارجاع به انواع مختلف شیءها صورت میگیرد، نگارشهای مختلفی از یک متد
== منابع ==
|