Абстрактные классы в ООП

Есть в ООП много интересного и одна из следующих особенностей, это

Абстрактные классы - они задаются словом abstract.

Их особенности:

  1. Если в классе есть хотя бы один абстрактный метод, то класс может быть только абстрактным!
  2. В нем могут быть и публичные методы
  3. Они не имеют реализации

 

abstract class M {}

$m = new M(); // так не получится сделать!!!

иначе будет такая ошибка Fatal error: Uncaught Error: Cannot instantiate abstract class M in

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

 

Абстрактные методы

Абстрактные методы - это как прототипы, наследуемые классы ОБЯЗАНЫ их реализовать, иначе будет ошибка. Они берут к примеру, обычный двигатель и форсируют его (мужской пример).

Могут переопределить его как он сам и выше (по области видимости) .

 

 

Добавить комментарий


Защитный код
Обновить

Вы здесь: Сайтостроение Создание сайта PHP Абстрактные классы в ООП