Ich versuche, die praktische Bedeutung abstrakter Klassen in der objektorientierten Programmierung, insbesondere in PHP, zu verstehen.
Nach meinem Verständnis erzwingen abstrakte Klassen untergeordnete Klassen, bestimmte abstrakte Methoden zu implementieren , was für eine gewisse Konsistenz sorgt. Ich habe jedoch das Gefühl, dass wir die gleiche Funktionalität durch das Überschreiben von Methoden erreichen könnten.
Zum Beispiel könnte ich durch einfaches Überschreiben von Methoden in den untergeordneten Klassen das Verhalten für jede Klasse anpassen, ohne etwas erzwingen zu müssen alles durch abstrakte Methoden. Dies würde zu etwas mehr Code führen, aber eine größere Flexibilität ermöglichen.
Also
F1. Was ist der einzigartige Zweck abstrakter Klassen, der nicht durch einfaches Überschreiben von Methoden erreicht werden kann?
F2. Warum ist es für abstrakte Klassen wichtig, abstrakte Methoden in untergeordneten Klassen zu erzwingen?
F3. Ist diese Durchsetzungsmaßnahme für den Entwickler gedacht, der die App entwickelt, oder erzwingt sie eine Einschränkung für den Endbenutzer, so dass der Benutzer nicht in der Lage ist, seinen Wunsch zu erfüllen, z. B. einen Benutzer in einer anderen Kategorie hinzuzufügen (was durch unseren harten Code eingeschränkt ist)? während ich bestehenden Benutzern Zugriffskontrolle gebe, bei der alles dynamisch gehandhabt wird?
Wenn jemand dies anhand eines praktischen Beispiels oder Anwendungsfalls erklären könnte, würde mir das helfen, es besser zu verstehen.
Warum abstrakte Klassen verwenden, wenn das Überschreiben von Methoden die gleiche Funktionalität in PHP erreichen kann? ⇐ Php
-
- Similar Topics
- Replies
- Views
- Last post