آموزش مقدماتی PHP | تعیین سطوح دسترسی در OOP
خطای دسترسی
برای ثبت پاسخ، ابتدا باید در سایت وارد شوید.
ویژگی ها و متد ها در یک کلاس را می توان با استفاده از سطوح دسترسی مختلف، کنترل کرد که در چه جاهایی قابل دسترسی باشند.
3 سطح دسترسی متفاوت وجود دارد:
- public: ویژگی یا متد در همه جا قابل دسترسی است. این سطح دسترسی به صورت پیش فرض برای متد ها و ویژگی ها وجود دارد.
- protected: ویژگی یا متد فقط در درون خود کلاس و کلاس های برگرفته از این کلاس، قابل دسترسی است.
- private: ویژگی یا متد فقط در داخل خود کلاس قابل دسترسی است.
در مثال زیر، به سه ویژگی مختلف، سه سطح دسترسی متفاوت داده ایم. در اینجا، اگر بخواهید برای ویژگی name مقداری تعیین کنید، مشکلی پیش نمی آید (چرا که این ویژگی از نوع public است). اما هنگام مقدار دهی به ویژگی color یا weight با خطای fatal error روبرو خواهید شد.
<?php
class Fruit {
public $name;
protected $color;
private $weight;
}
$mango = new Fruit();
$mango->name = 'Mango'; // درست
$mango->color = 'Yellow'; // خطا
$mango->weight = '300'; // خطا
?>
برای ثبت پرسش ابتدا در سایت وارد شوید.