دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۳
  • مرداد

جلسه ۱۶ : وراثت در زبان دارت

  • دسته‌بندی‌ها :
جلسه ۱۶ : وراثت در زبان دارت

        با عرض سلام خدمت کاربران محترم سایت پی وی لرن.
        با جلسه ای دیگر از سری جلسات دوره آموزش زبان برنامه نویسی دارت Dart در خدمت شما هستیم.
        در این جلسه قصد داریم به آموزش وراثت در زبان دارت (Inheritance) بپردازیم.

        مقدمه

        وراثت Inheritance یکی از مهم ترین و پرکاربرد ترین ویژگی های شئ گرایی است.
        با استفاده از وراثت می‌توانیم کلاس هایی را بر اساس کلاس های موجود ایجاد کنیم.
        در واقع کلاس های جدید می‌توانند اعضا کلاس های والد خود را به ارث ببرند و از آن ها اسفاده کنند.
        کلاس هایی که به ارث برده می‌شوند، والد و کلاس هایی که ارث بری می‌کنند، فرزند نامیده می‌شوند.

        ارث بری کلاس ها

        با استفاده از کلمه کلیدی extends، می‌توانیم کلای ها را ارث بری کنیم.
        بدین صورت که ابتدا نام کلاس فرزند، کلمه کلیدی extends و سپس نام کلاس والد را می‌نویسیم.

        گرامر:

        مثال : 

        در مثال زیر، ما یک کلاس به نام shape داریم.
        کلاس  circle این کلاس را ارث بری می‌کند. در نتیجه تمامی اعضای آن از جمله متغیر ها و متد های کلاس shape را در اختیار دارد.

        مثال : 

        خروجی:

        مثال : 

        انواع وراثت

        سه نوع وراثت در برنامه نویسی شئ گرا داریم:

        1. وراثت یگانه : هر کلاس تنها از یک کلاس والد ارث بری می‌کند. مانند مثال بالا
        2. وراثت چندگانه : هر کلاس از می‌تواند از چند کلاس والد ارث بری کند. (دارت از وراثت چندگانه پشتیبانی نمی‌کند)
        3. وراثت چند سطحی : یک کلاس می‌تواند از یک کلاس فرزند دیگر ارث بری کند.

        مثال وراثت چند سطحی:

        مثال : 

        خروجی:

        مثال : 

        سربارگذاری متد ها (Method Overriding)

        با استفاده از سربارگذاری متد ها می‌توانیم متد های کلاس والد را مجددا تعریف کنیم.

        مثال : 

        خروجی:

        مثال : 

        توجه داشته باشید که نام و تعداد پارامتر های متد سربارگذاری شده باید با متد کلاس والد یکی باشد. در غیر این صورت با خطا مواجه خواهیم شد.

        کلمه کلیدی static

        کلمه کلیدی static می‌تواند به اعضای یک کلاس اعمال شود.
        یک متغیر استاتیک تا پایان اجرای برنامه، مقدارش را حفظ خواهد کرد. (متغیر استاتیک بین تمام اشیایی که از کلاس ساخته می‌شود، به اشتراک گراشته می‌شود.
        همچنین می‌توانیم بدون ایجاد شئ از کلاس، به اعضای static دسترسی داشته باشیم.

        مثال : 

        خروجی:

        مثال : 

        کلمه کلیدی super

        کلمه کلیدی super مانند کلمه کلیدی this است منتها به کلاس والد ارجاع می‌دهد.

        مثال : 

        خروجی:

        مثال : 

         

         

        جلسه آموزش وراثت در زبان دارت Dart نیز به پایان رسید.

        در جلسه بعد به آموزش کالکشن ها در زبان دارت خواهیم پرداخت.

        QR:  جلسه ۱۶ : وراثت در زبان دارت
        به اشتراک بگذارید