Наследование (полиморфизм) классов


Один класс может наследовать другой. И все, что есть у класса-родителя, автоматом переходит к классу-наследнику. Рассмотрим пример:

class Car {
public $numWheels = 4;
function printWheels() { echo $this->numWheels; }
}
class Toyota extends Car { //наследование с помощью extends
public $country = 'Japan'; //добавим свойство country
function printCountry() { echo $this->country; } //добавим метод printCountry
}
$myCar = new Toyota(); //создаем объект класса Toyota
$myCar->printWheels(); //доступен первый метод из одного класса
$myCar->printCountry(); //доступен второй метод из другого класса

Есть класс Car, у него свойство — numWheels. И есть метод printWheels. На его основе создаем класс Toyota, используя extends. Класс Car является родителем для класса Toyota. У класса Toyota добавим свойство country и метод printCountry. Все свойства родителя переходят по наследству к классу Toyota. Теперь если создаем объект класса Toyota, нам доступны оба метода из двух классов.


Ваш комментарий

Ваш адрес email не будет опубликован.

Для отправки комментария, поставьте отметку, что разрешаете сбор и обработку ваших персональных данных . Политика конфиденциальности