حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود
آموزش پایتون پروژه‌محور؛ قسمت سوم: شیءگرایی تا ساخت برنامه

چندریختی در پایتون؛ پیش‌بینی خروجی متدها

ارث‌بری و ترکیب اشیا در پایتون · 0٪

کد زیر رو بدون اجرا دنبال کن. حلقه هر بار همون پیام label() رو به شیء می‌فرسته، اما متد متناسب با کلاس همون شیء انتخاب می‌شه. به این رفتار چندریختی می‌گن: یک متد هم‌نام، بسته به نوع شیء، کار متفاوتی انجام می‌ده.

class Task:
    def label(self):
        return "کار"

class UrgentTask(Task):
    def label(self):
        return super().label() + " فوری"

items = [Task(), UrgentTask()]
for item in items:
    print(item.label())

فعالیت شما

خروجی رو با درنظرگرفتن override و super پیش‌بینی کن.

مطالعهٔ این گام برای همه آزاد است

برای پاسخ‌دادن، بررسی پاسخ، ثبت پیشرفت و استفاده از دستیار باید شرایط شرکت در فعالیت‌ها را داشته باشید.

برای انجام فعالیت وارد شوید

فعالیت‌های این بخش به اشتراک فعال نیاز دارند. تهیهٔ اشتراک

برای انجام فعالیت‌ها ابتدا این دوره‌های پیش‌نیاز را تکمیل کنید:

گزینه‌های پیش‌بینی خروجی

  1. خط اول: کار؛ خط دوم: کار
  2. خط اول: کار؛ خط دوم: کار فوری
  3. خط اول: کار فوری؛ خط دوم: کار فوری
  4. خطای بازگشت بی‌پایان