Я пытаюсь понять практическую важность абстрактных классов в объектно-ориентированном программировании, особенно в PHP.
Насколько я понимаю, абстрактные классы заставляют дочерние классы реализовывать определенные абстрактные методы. , что обеспечивает некоторую согласованность. Однако я чувствую, что мы могли бы добиться той же функциональности, используя переопределение методов.
Например, просто переопределив методы в дочерних классах, я мог бы настроить поведение каждого класса без необходимости принудительного применения что-либо с помощью абстрактных методов. Это приведет к увеличению объема кода, но обеспечит большую гибкость.
Итак,
Вопрос 1. в чем уникальное назначение абстрактных классов, которого нельзя достичь простым переопределением метода?
Q2. Почему абстрактным классам важно применять абстрактные методы в дочерних классах?
Q3. Это принудительное действие для разработчика, который разрабатывает приложение, или оно налагает некоторые ограничения на конечного пользователя, чтобы пользователь не мог выполнять свои желания, например добавлять какого-либо пользователя в какую-либо другую категорию (которая ограничена нашим жестким кодом) одновременно предоставляя контроль доступа существующему пользователю, где все обрабатывается динамически?
Если бы кто-нибудь мог объяснить это на практическом примере или примере использования, это помогло бы мне лучше понять.
Подробнее здесь: https://stackoverflow.com/questions/793 ... unctionali
Зачем использовать абстрактные классы, если переопределение метода может обеспечить ту же функциональность в php? [закры ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
C# 11. Статические абстрактные члены в интерфейсах через абстрактные классы?
Anonymous » » в форуме C# - 0 Ответы
- 49 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Интерфейсы в Python: зачем вообще использовать абстрактные классы? [дубликат]
Anonymous » » в форуме Python - 0 Ответы
- 13 Просмотры
-
Последнее сообщение Anonymous
-