Was ist eine abstrakte Methode?
Bei der objektorientierten Programmierung werden Unterprogramme mit der Bezeichnung "Methoden" verwendet, um Funktionen in einem Programm auszuführen. Diese Methoden bestehen aus Programmieranweisungen, die eine Aktion ausführen, Eingabeparameter zum Anpassen von Aktionen einrichten und einen Wert eines Objekts oder einer Klasse zurückgeben oder ausgeben können. Methoden sind die Aktionen, die in einem Programm von einer bestimmten Klasse oder innerhalb eines Objekts ausgeführt werden und für den Zugriff auf und die Bearbeitung von Daten verwendet werden, die in einem Objekt gespeichert sind. Es gibt viele verschiedene Methoden, von denen jede eine bestimmte Verwendung hat. Ein bestimmter Typ, der von einer abstrakten Superklasse ausgeführt und von Unterklassen geerbt wird, wird als abstrakte Methode bezeichnet.
Im Allgemeinen führt die abstrakte Methode innerhalb ihrer abstrakten Superklasse nur eine geringe oder gar keine Implementierung durch. Codes, die in dieser Art von Methode enthalten sind, werden als Dummy-Codes betrachtet und nicht selbst implementiert. Dies bedeutet nicht, dass die spezifische abstrakte Methode in einer bestimmten abstrakten Klasse nicht verwendet wird. Die abstrakte Methode fungiert vielmehr als Modell oder Platzhalter für Unterklassen, um die Implementierung der Methode abzuschließen.
Superklassen können mehrere Unterklassen enthalten, und alle Unterklassen einer Superklasse weisen bestimmte ähnliche Zustände und Verhaltensweisen auf. Abstrakte Klassen sind daher eine Art von virtueller Klasse, die eine virtuelle Vererbung aufweist. Dies bedeutet, dass jede von einer Superklasse abgeleitete Unterklasse die Einschränkungen der Superklasse erbt, von der sie abgeleitet ist. Methoden in Unterklassen leiten sich daher von abstrakten Methoden von Oberklassen ab. Beim Programmieren und Verwenden von abstrakten Methoden muss der Programmierer die Klasse als abstrakt und nicht als virtuell deklarieren.
Eine übergeordnete Klasse von „Grafikobjekten“ enthält beispielsweise die Unterklassen „Kreis“, „Quadrat“ usw. Daher haben alle Kreise und Quadrate den gleichen Status: Ausrichtung, Position, Füllfarbe, Linienfarbe und Verhalten , Größe ändern, drehen, zeichnen - als „Grafikobjekte“. Alle Unterklassen in dieser Superklasse haben die gleichen Eigenschaften, werden jedoch auf unterschiedliche Weise implementiert. Die abstrakte Methode der Oberklasse liefert die Grundlagen ohne Implementierung, und die Unterklassen führen die eigentliche Implementierung mit denselben Methoden durch. Obwohl jede Unterklasse dieselbe Methode wie die abstrakte Klasse verwendet, definieren sie die Art und Weise, in der die Methode ausgeführt wird, eindeutig.
Die Verwendung einer abstrakten Methode ermöglicht die Verallgemeinerung auf oberster Ebene oder übergeordneter Klasse und die Spezifikation auf unterster Ebene oder Unterklassen. Diese Hierarchie minimiert den Umfang der Methodenprogrammierung für jede bestimmte Unterklasse. Die Verwendung dieser Methoden ermöglicht auch die Idempotenz von Unterklassen, dh, wenn eine Methode immer wieder implementiert wird, ist das Ergebnis jedes Mal das gleiche.