2 Stimmen

Gibt es ein OOP-Prinzip, das dagegen spricht, dass eine konkrete Klasse eine andere konkrete Klasse erweitert?

Ich habe gelesen, dass dies vermieden werden sollte, kann mich aber nicht mehr an die Quelle erinnern. Vererbung sollte mit abstrakten Klassen in der Mitte der Hierarchie verwendet werden, und konkrete Klassen nur als Blätter zeigen.

Wo kann ich eine gute Erklärung für die Gründe dafür finden? (Auch gegenteilige Meinungen sind willkommen)

1voto

nkr1pt Punkte 4590

Dies sollte nicht zu streng genommen werden. Ich denke, die zugrundeliegende Idee ist eher, sich auf die Programmierung für eine Schnittstelle zu konzentrieren, entweder eine reine Schnittstelle oder eine abstrakte Klasse, da dies eine lockerere Kopplung Ihres Designs, Polymorphismus, Kapselung,... ermöglicht.

Achten Sie auch darauf, dass Sie nicht gegen die Liskov-Substitutionsprinzip

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X