پیاده سازی می کند (implements)
کلمه «implements در PHP» برای قول دادن است. کلاس می گوید: من روش های «رابط (Interface)» را دقیق اجرا می کنم. مثل مدرسه: قول می دهی قوانین باشگاه رباتیک را رعایت کنی.
تعریف و کاربرد «implements در PHP»
کلیدواژه implements می گوید کلاس باید همه متدهای رابط را داشته باشد. «چندریختی (Polymorphism)» یعنی اشیای مختلف، رفتاری هم شکل ارائه دهند. بنابراین کد، قابل تعویض و تمیز می ماند.
مثال از رابط و کلاس پیاده ساز
<?php
interface Machine {
public function activate();
public function deactivate();
public function isActive();
}
class Kettle implements Machine {
private $isOn = false;
public function activate() {
$this->isOn = true;
}
public function deactivate() {
$this->isOn = false;
}
public function isActive() {
return $this->isOn;
}
}
$machine = new Kettle();
$machine->activate();
if ($machine->isActive()) {
echo "The machine is on";
} else {
echo "The machine is off";
}
echo "<br>";
$machine->deactivate();
if ($machine->isActive()) {
echo "The machine is on";
} else {
echo "The machine is off";
}
?>
گام های عملی
- یک «رابط (Interface)» با امضاهای متد تعریف کن.
- یک کلاس بساز و از
implementsاستفاده کن. - همه متدها را دقیق پیاده سازی کن.
نکته: نام و تعداد متدها باید دقیقاً مطابق رابط باشد.
هشدار: اگر حتی یک متد را پیاده سازی نکنی، خطا می گیری.
بیشتر: interface، class، و لینک خود صفحه با کلیدواژه تمرکز: implements در PHP.
جمع بندی سریع
implementsتعهد به متدهای رابط است.- برای چندریختی و کد تمیز عالی است.
- امضاها باید دقیق و هم نام باشند.
- اشیا قابل تعویض می شوند.