ورودی متد یک کلاس از نوع کلاس دیگر

پرسیده شده
فعالیت 1344 روز پیش
دیده شده 543 بار
0

سلام و احترام به همگی

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

 private function withTracking(PromiseInterface $promise, string $uri, int $statusCode): PromiseInterface
    {
        return $promise->then(
            static function (ResponseInterface $response) use ($uri, $statusCode) {
                // Note that we are pushing to the front of the list as this
                // would be an earlier response than what is currently present
                // in the history header.
                $historyHeader = $response->getHeader(self::HISTORY_HEADER);
                $statusHeader = $response->getHeader(self::STATUS_HISTORY_HEADER);
                \array_unshift($historyHeader, $uri);
                \array_unshift($statusHeader, (string) $statusCode);

                return $response->withHeader(self::HISTORY_HEADER, $historyHeader)
                                ->withHeader(self::STATUS_HISTORY_HEADER, $statusHeader);
            }
        );
    }

کاری با کدای داخل تابع ندارم، به نوع ورودی تابع دقت کنید، پشت متغیری که به عنوان پارامتر تابع قرار داده، اسم یک کلاس رو آورده. معنی این چیه؟؟ دقیقا چیکار میکنه؟؟ آیا داره نوع ورودی رو با یک کلاس دیگه مقایسه میکنه؟

فایل پیوست

امیر صالحی
امیر صالحی

30 تیر 99

0
حذف شده

سلام 

این شکل ورودی یعنی متغیر promise نوعی از  PromiseInterface است 

تا اونجا که من فهمیدم  یک نمونه از کلاس PromiseInterface ساخته شده و داخل متغیر promise ریخته شده تا شما بتونین از پراپرتی های اون کلاس استفاده کنین 

مقایسه نیست 

حالا باز هم خودتون سرچ بزنین برای مطالب بیشتر که من اشتباه نکرده باشم!

فایل پیوست

میثم نصرتی

توسط

میثم نصرتی

30 تیر 99

2
حذف شده

سلام دوست عزیز.

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

گاهی اوقات یک شی از یک کلاس از چندین شی از کلاس های دیگه ساخته میشه (مثلا نمونه هایی از کلاس های دیگه رو توی متد constructor خودش نیاز داره - مثلا فرض کنید کلاس ماشین برای ساخته شدن به کلاس های موتور، کلاس سیستم تعلیق،  کلاس سیستم کنترل و ... نیاز داره)

به این مفهوم هم Composition یا Class Composition میگن. یعنی ساخته شدن یک کلاس با استفاده از کلاس های دیگه.

 

موفق باشید.

فایل پیوست