Szenarien, in denen wir uns für die abstrakte Klasse entscheiden können und wo wir uns für das Überschreiben von Methoden entscheiden können. Lass mich das erklären. Ich habe eine Klasse A.Vorteile von abstrakten Methoden gegenüber Methodenüberschreibung
abstract class A {
abstract public void display();
}
und im Normalfall kann ich diese Klasse als
class B extends A {
public void display() {
System.out.println("This is a bike");
}
}
Das gleiche diese erweitere ich durch die Verwendung Methode überschrieben Merkmal, auch wenn die Methode der Klasse A tun könnte hat etwas.
Also meine Frage ist, wann sollte ich für die abstrakte Klasse gehen, wenn die gleiche Funktion kann ich durch Überschreiben der Methode erreichen.
Ist nicht der Hauptvorteil von abstrakten Klassen, die Sie nicht instanziieren können (wie Schnittstellen), aber kann einen Basiskonstruktor bereitstellen und andere Klassen (wie Klassen) erweitern? – mezzodrinker
Ich verstehe Ihre Frage nicht: Wenn Sie eine abstrakte Klasse mit einer abstrakten Methode haben, müssen Sie sie in der Unterklasse überschreiben. – hotzst
Sie überschreiben hier bereits die Methode, weil Sie die Anzeigemethode überschreiben – Igorock