ویژگی یا property در کلاس

تاریخ: 24 فروردین 1400

ویژگی ها یا property های یک کلاس، یکی از بخش های اصلی شی گرایی می باشند. ویژگی ها نقش عمده ای در عملکرد متدها دارند و بدون وجود آنها، داشتن توابعی با عملکردی مناسب غیر ممکن می باشد.

تعریف property یک کلاس

می دانیم که هر شی می تواند برای خودش ویژگی هایی داشته باشد.

مثلا شی ماشین دارای رنگ، طول، ارتفاع، مدل، سال تولید و … است.

هنگامی که برای یک شی، یک کلاس تعریف می کنیم، می توانیم ویژگی های آن شی را نیز مشخص کنیم.

class Foo {
    public $size = '26';
}

چنانچه در کد بالا می بینید، یک متغیر با نام size تعریف کردیم.

به متغیرهایی که در کلاس تعریف می کنیم، ویژگی یا property آن کلاس گفته می شود.

نکته: نام property ها، از همان قوانین نام متغیرها در php پیروی می کند.

 

استفاده از property خارج از کلاس

اگر بخواهیم از یک property خارج از یک کلاس استفاده کنیم، باید از شی ساخته شده از کلاس کمک بگیریم.

یعنی باید ابتدا از آن کلاسی که property در آن است، یک شی بسازیم و سپس با استفاده از آن به property برسیم:

class Foo {
    public $size = 12;
}
$object = new Foo;
echo $object->size; //output: 12

برای دسترسی به property کافیست از نام شی به همراه یک arrow و نام property استفاده کنیم.

نکته: اگر بخواهیم به یک property در خارج از کلاس دسترسی داشته باشیم، در هنگام تعریف آن property باید کلمه public را قبل از نام آن بیاوریم. مشابه دستور بالا.

 

استفاده از property درون کلاس

property ها عموما درون کلاس استفاده می شوند. برای دسترسی به property از درون کلاس و متدهای کلاس، از کیورد this$ استفاده می کنیم:

class Foo {
    public $size = 25;
    function show_size () {
        return $this->size;
    }
}
$object = new Foo;
echo $object->show_size(); //output: 25

در کد بالا به ویژگی size در متد show_size دسترسی یافته و آن را return می کنیم.

 

 

دیدگاهتان را بنویسید