Курс Php 2024. Урок 8. ООП
PHP. ООП. Абстрактные классы и интерфейсы
В сегодняшнем уроке мы рассмотрим абстрактные классы и интерфейсы в php, а также обсудим различия между ними. Абстрактные классы в php реализуются добавлением ключевого слово abstract. Абстрактные классы могут иметь свойства и методы. Но в отличии от обычных классов, методы в абстрактных классах не имеют тела. Ключевое значение в таких методах — необходимость их реализации в дочерних классах. Интерфейс — это тот же абстрактный класс, но у него нет свойств. Интерфейс объявляется при помощи ключевого слова interface. Еще одной важной особенностью является то, что класс может унаследовать только один класс, но может реализовывать сколь угодно много интерфейсов...
Главное отличие интерфейса от абстрактного класса ?
Основное отличие интерфейса от абстрактного класса в Java и Kotlin заключается в том, что интерфейс может содержать только абстрактные методы (методы без тела), а абстрактный класс может содержать как абстрактные, так и конкретные методы (методы с телом). Другими словами, интерфейс определяет только контракт, то есть какие методы должны быть реализованы в классах, которые его реализуют, но не содержит реализацию этих методов. Абстрактный класс же может содержать реализацию некоторых методов и в то же время может определять некоторые абстрактные методы, которые должны быть реализованы в классах-наследниках...