Урок 10

Наследование

15 мин

Наследование — это механизм, позволяющий создавать новые классы на основе существующих. Дочерний класс получает все свойства и методы родителя и может добавить свои.

Зачем нужно наследование?

Представьте интернет-магазин с разными типами товаров:

  • У всех товаров есть: название, цена, описание
  • У книг дополнительно: автор, ISBN
  • У электроники: гарантия, производитель

Без наследования пришлось бы дублировать общий код в каждом классе. С наследованием:

  1. Создаём базовый класс Product с общими свойствами
  2. Классы Book и Electronics наследуют от него
  3. Каждый добавляет только своё уникальное

Базовое наследование (extends)

Ключевое слово extends указывает, от какого класса наследовать:

Что происходит:

  • Dog и Cat автоматически получили свойство $name и конструктор
  • Метод speak() переопределён — у каждого класса своя реализация
  • Dog имеет дополнительный метод fetch(), которого нет у Cat

Вызов родительского метода

protected — для наследников

final — запрет переопределения

Мы используем файлы cookie для улучшения работы сайта и персонализации контента. Продолжая использовать сайт, вы соглашаетесь с использованием cookies в соответствии с нашей Политикой конфиденциальности.