#C برنامه نویسی

آموزش تصویری برنامه نویسی شی گرا در سی شارپ (OOP) – چندریختی (Polymorphism) در شی گرایی

آموزش تصویری برنامه نویسی شی گرا در سی شارپ (OOP) - چندریختی (Polymorphism) در شی گرایی
آموزش تصویری برنامه نویسی شی گرا در سی شارپ (OOP) - چندریختی (Polymorphism) در شی گرایی

آموزش تصویری برنامه نویسی شی گرا در سی شارپ (OOP) – چندریختی (Polymorphism) در شی گرایی

در فیلم قبل از سری آموزشی برنامه نویسی شی گرا مفهوم وراثت را در برنامه نویسی شی گرا فرا گرفتید. در این فیلم آموزشی که آخرین فیلم آموزشی از سری فیلم های آموزشی برنامه نویسی شی گرا در #C می باشد، در مورد مبحث چند ریختی (Polymorphism) بحث می شود. بحث چند ریختی (Polymorphism) در برنامه نویسی شی گرا، یکی از مهمنرین مبحث های شی گرایی می باشد.

چندریختی به معنای چندین شکل از یک متد است. مفهوم چندریختی اغلب به وسیلهٔ عبارت« یک رابط، چند متد» بیان می‌شود. این بدین معناست که این امکان وجود دارد که یک رابط عمومی برای گروهی از فعالیت‌های مرتبط به هم طراحی شود.

در برنامه‌های شیء گرا مانند جاوا، این امکان فراهم شده تا دو و یا بیش از دو متد همنام در یک کلاس تعریف نمود، مشروط بر اینکه تعریف پارامترهای آن متفاوت باشد. در این موارد متدها Overload می‌شوند. از چندریختی به منظورتعیین انواع مختلف متدهای پویا، در زمان اجرا استفاده می‌شود. که این یکی از قدرتمندترین امکاناتی است که چندریختی به وجود می‌آورد.

چنانچه نام و امضای متدی از یک زیر کلاس(در ساختار سلسله مراتبی کلاس‌ها) با نام و نوع امضای متدی از فوق کلاسش یکسان باشد، در آن صورت متد موجود در زیر کلاس، متد موجود در فوق کلاسش را Override می‌کند.
مفاهیم Overload وOverride کردن متدها از جمله مفاهیمی هستند که چندریختی بر پایهٔ آن‌ها بنا می‌شود.

 

با تشکر فراوان از استاد عزیزم “ استاد روشن پور ”

دانلود فیلم آموزشی

 

پیروزباشید، طراح باشی


پیروز باشید!
طراح باشی

درباره نویسنده

احسان عباسی

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

دیدگاه

برای نوشتن دیدگاه کلیک کنید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

    • با سلام و تشکر از دیدگاهتون
      دوست عزیز فایل ها رمز گذاری نشده اند و باید به راحتی unzip شوند.

  • واقعا خیلی خیلی عالیه.خیلی خیلی کامل توضیح دادن.ازت متشکریم استاد روشن پور وشمایی که فیلم رو دراختیار ما گذاشتین.جمعی از دانشجویان رشته کامپیوتر-نرم افزار دانشگاه ازاد بندرعباس

    • با سلام
      دوست عزیز متاسفانه مجموعه ی از ADO.net نمی شناسیم. اما اگر مشاهده شد حتما معرفی می کنیم
      با تشکر

  • خیلی ممنون که فیلم استادو گذاشتی
    عالی بود.
    فقط یک سوال؟(خواهش میکنم بگو ،سوالم زیاده اما جوابت کوتاه)
    man hame ro az aval ta akhar kamel fahmidam bejoz
    on method haie ke override mishan,mehtod pedareshon
    che moghe bayad virtual bashe che moghe abstract?

    man injori fahmidam:
    ۱٫
    baraye mesal tebghe mesale ostad, agar pressonel nadashtim va class base employee bood(midonim chetori kar mikone(hoghogh inja)) bayad vitrual mizarim

    ۲٫
    agar method pedare mesle karmand ya mohre shatranj nadonim chekar mikone abstract migirim

    soale asli
    baste be niaz az raveshe 1 ya 2 estefade mikonim
    ya raveshe 1 ro faghat baraye yadgiri goft,raveshe 2 hamishe behtare?

    • با سلام و تشکر از دیدگاهتون.
      دوست عزیز بسته به نیازی که در برنامه وجود داره و خروجی که نیاز است از روش های فوق استفاده می کنیم.
      یک کلاس وقتی به صورت abstract تعریف بشه دیگه نمیشه ازش شی ساخت و تنها برای استفاده و مشتق در subclass استفاده میشه. برای مثال جهان هستی یک کلاس abstract هست که مثلا کلاس موجودات زنده ازش مشتق شده و کلاس موجودات زنده متد های خودشو داره.
      اما Method overriding قابلیتی است که در آن یک کلاس فرزند می تواند پیاده سازی خاص خود را از متدهای کلاس پدر داشته باشد و در زمان اجرا آن پیاده سازی بجای پیاده سازی پدر استفاده شود (مثال محاسبه مالیات برای کارمندان و مدیران).

پربازدیدها