Warum nicht überschreiben, anstatt abstrakte Klasse zu verwenden?

Dies mag für viele eine einfache Frage sein, hat mich aber verwirrt. Ich wähle ein Beispiel von Kathy Sierra aus, das die Nützlichkeit abstrakter Klassen zeigt, aber ich kann die allgemeine Bedeutung abstrakter Klassen nicht verstehen.

Beispiel Wir haben eine abstrakte KlasseCar mit abstrakten Methoden -power() & topSpeed(). Diese Methoden sind in Unterklassen implementiertBMW, Volkswagen undAudi.

Meine Frage ist - Warum brauchen wir die abstrakte Klasse?Car in erster Linie Methoden für jeden Autotyp anpassen? Warum nicht diese beiden Methoden in einem dieser Auto-Subtypen haben, sagen BMW und dann zwei andere - Volkswagen und Audi - können diese Methoden einfach außer Kraft setzen?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage