🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ محمدرضا
متد سازنده (constructor) در Interface‌ها !
محسن موحد حل شده توسط محسن موحد

سلام

گفتیم که درون Interface‌ها نمی‌توان از متد سازنده (constructor) استفاده کرد چون اساسا آبجکتی از آنها ساخته نمیشه که متد سازنده فراخوانی بشه، ولی مستندات php(اینجا) گفته میشه! و مثالی هم نیاورده.

متن مستند:

Note that it is possible to declare a constructor in an interface, which can be useful in some contexts, e.g. for use by factories

اگر امکان پذیر هستش، چطور میشه و کجا کاربرد داره؟

ممنون

 

سلام.

میشه constructor تعریف کرد و قوانینش مثه متدهای دیگس و باید کلاسی که اینترفیسو پیاده میکنه این متد رو هم داشته باشه.

<?php
interface iShape
{
    public function __construct($x, $y);
}
class Rectangle implements iShape
{
    public function __construct($x, $y)
    {
        $this->x = $x;
        $this->y = $y;
    }
}
$obj = new Rectangle(10, 8);

 

بهترین پاسخ
محسن موحد ۲۹ خرداد ۱۳۹۹، ۱۶:۴۹