🔥 با کمک هوش مصنوعی در کمتر از 6 ماه فول‌استک شوید ...
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ شارود آشوری
متد سازنده (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);

 

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