Sobes.tech
Junior

PHP контекстинде кеңейтүү (extend) эмне?

sobes.tech AI

AIден жооп

PHP-де кеңейүү же мурас алуу механизми, бир класс (балдар же мурас классы) башка класс (ата же негизги класс) мүлктөрүн жана ыкмаларын мурас кылууга мүмкүндүк берет.

extends ачкыч сөзү ата класс көрсөтүү үчүн колдонулат.

Мурас алуу артыкчылыктары:

  • Кодду кайра колдонуу: Бир эле кодду бир нече жолу жазуу керек эмес.
  • Кеңейтүү мүмкүнчүлүгү: Балдар класс жаңы мүлктөр жана ыкмаларды кошуп же ата классындагы барларды кайра жазышы мүмкүн.
  • Полиморфизм: Төрттүрдүү класс объектилери жалпы ата класс катары иштетилиши мүмкүн.

Мисал:

<?php

class Animal {
    public function eat() {
        echo "Жаныбар жейт.";
    }
}

class Dog extends Animal {
    public function bark() {
        echo "Ит чычкайт.";
    }
}

$dog = new Dog();
$dog->eat(); // Ата класс ыкмасын чакыруу
$dog->bark(); // Балдар класс ыкмасын чакыруу

?>

Балдар класс мурас албайт:

  • Жеке мүлктөр жана ыкмалар (алар объектте болсо да, түздөн-түз балдар классынан чакырылбайт).
  • Ата класс конструктору автоматтык түрдө чакырылбайт, эгер parent::__construct() аркылуу так көрсөтүлбөсө.