Methodenüberschreibung in Python

Veröffentlicht: 2023-01-28

Inhaltsverzeichnis

Voraussetzungen zum Verständnis von Method Overriding:

Das Überschreiben von Methoden ist eines der wichtigsten Konzepte in der objektorientierten Programmierung. Die Implementierung einer bestimmten Funktion in der untergeordneten Klasse, die in einer übergeordneten Klasse definiert ist, kann durch das Überschreiben der Methode geändert werden. Das Überschreiben von Methoden kann als die Fähigkeit der untergeordneten Klasse definiert werden, die Ausführung einer Methode zu ändern, die von einer ihrer übergeordneten Klassen angeboten wird, die als Vorfahren bezeichnet werden. Um eine Funktion zu überschreiben, müssen die folgenden Kriterien von der Klasse erfüllt werden.

  • Vererbbare Klasse: Das Ausführen von Funktionsüberschreibungen innerhalb einer Klasse ist nicht möglich. Die Ableitung einer Kindklasse von einer Elternklasse ist notwendig.
  • Die Signatur der in der untergeordneten Klasse neu definierten Funktion und die in der übergeordneten Klasse sollten identisch sein. Mit anderen Worten, die überschriebene Funktion und die Funktion in der übergeordneten Klasse sollten die gleiche Anzahl von Argumenten und Parametern haben.

Ein Überblick über das Überschreiben von Methoden in Python:

Wie zuvor definiert, die Methode, die die Eigenschaft einer objektorientierten Programmiersprache überschreibt, aufgrund derer die Unterklasse eine bestimmte Implementierung der Methode bereitstellt, die bereits von einer ihrer Oberklassen angeboten wird. Es wird gesagt, dass die Methode in einer Unterklasse (untergeordnete Klasse) eine Oberklassenmethode (übergeordnete Klasse) überschreibt, wenn die Unterklassenmethode die gleichen Parameter oder die gleiche Signatur, den gleichen Namen und den gleichen Rückgabetyp oder Untertyp wie die Methode in ihrer Oberklasse hat.

Das zum Aufrufen einer ausgeführten Methode verwendete Objekt bestimmt ihre Version. Die Version in der Oberklasse wird ausgeführt, wenn ein Objekt in der Oberklasse verwendet wird, um die Methode aufzurufen. Wenn jedoch eine Methode von einem Objekt in der Unterklasse aufgerufen wird, wird die Version der untergeordneten Klasse ausgeführt. Mit anderen Worten, der Typ des Objekts, auf das verwiesen wird, wird verwendet, um die Version der Methode zu bestimmen, die außer Kraft gesetzt und ausgeführt wird. Die Version der überschriebenen Methode wird nicht durch den Typ der Referenzvariablen bestimmt.

Sehen Sie sich die Data Science-Kurse von upGrad an

Vorteile des Überschreibens von Methoden:

Der Hauptvorteil der Methodenüberschreibung in Python besteht darin, dass die Klasse der geerbten Methode ein von ihr selbst definiertes Modell anbietet, ohne den Code der übergeordneten Klasse zu ändern. Diese Funktion ist auch in Fällen von Vorteil, in denen eine untergeordnete Klasse eine übergeordnete Klasse mit mehreren untergeordneten Klassen verwendet. In diesem Fall können die Methode und die Parameter der übergeordneten Klasse von der untergeordneten Klasse aufgerufen werden, ohne den Code der übergeordneten Klasse zu ändern.

Entdecken Sie unsere beliebten Data Science-Kurse

Executive Post Graduate Program in Data Science vom IIITB Professional Certificate Program in Data Science für die Entscheidungsfindung in Unternehmen Master of Science in Data Science von der University of Arizona
Advanced Certificate Program in Data Science vom IIITB Professional Certificate Program in Data Science und Business Analytics von der University of Maryland Data Science-Kurse

Lesen Sie unsere beliebten Data Science-Artikel

Data Science Career Path: Ein umfassender Karriereleitfaden Data Science Karrierewachstum: Die Zukunft der Arbeit ist da Warum ist Data Science wichtig? 8 Wege, wie Data Science dem Unternehmen einen Mehrwert bringt
Relevanz von Data Science für Manager Der ultimative Data Science Spickzettel, den jeder Data Scientist haben sollte Die 6 wichtigsten Gründe, warum Sie Data Scientist werden sollten
Ein Tag im Leben von Data Scientists: Was machen sie? Mythos gesprengt: Data Science braucht keine Codierung Business Intelligence vs. Data Science: Was sind die Unterschiede?

Unterschiede zwischen Methodenüberschreibung und Methodenüberladung

Methodenüberschreibung

Methodenüberladung

Methoden oder Funktionen in Eltern- und Kindklassen müssen dieselben Signaturen und denselben Namen haben. Die Funktionen oder Methoden müssen die gleichen Namen haben. Ihre Signaturen müssen jedoch nicht gleich sein.
Dies ist ein Beispiel für Laufzeitpolymorphismus. Dieser Prozess ist ein Beispiel für Polymorphismus zur Kompilierzeit.
Vererbung ist ein Muss für das Überschreiben von Methoden in Python. Die Vererbung von Klassen kann in einigen Fällen erforderlich sein. Es ist jedoch möglicherweise nicht in allen Fällen erforderlich.
Das Überschreiben von Methoden findet zwischen den Methoden in der übergeordneten Klasse und der untergeordneten Klasse statt. Dies kann jedoch nicht innerhalb einer Klasse geschehen. Das Überladen von Methoden findet zwischen den Methoden innerhalb derselben Klasse statt.
Diese Funktion wird verwendet, um das Verhalten der vorhandenen Methoden zu ändern. Es wird verwendet, um mehr zum Verhalten der Methode hinzuzufügen.
Mindestens zwei Klassen (eine untergeordnete Klasse und eine übergeordnete Klasse) sind erforderlich, um das Überschreiben von Methoden durchzuführen. Es sind keine zusätzlichen Klassen erforderlich, da das Überladen zwischen den Methoden innerhalb derselben Klasse erfolgt.

Wenn Sie sich intensiver mit dem Überschreiben von Methoden in Python vertraut machen möchten, empfehlen wir Ihnen, den 18-monatigen Master of Science in Data Science zu absolvieren . upGrad bietet diesen Kurs vom IIIT Bangalore und der Liverpool John Moore's University an. Der Kurs vermittelt Ihnen Fähigkeiten wie Statistik, Predictive Analytics mit Python, maschinelles Lernen, Datenvisualisierung, Big Data Analytics und mehr. Studenten mit fundierten Kenntnissen der Konzepte von Python sind gut positioniert, um Themen wie Deep Learning, Natural Language Processing, Business Analytics und Data Engineering anzugehen.

Möchten Sie diesen Artikel teilen?

Bereiten Sie sich auf eine Karriere der Zukunft vor

Bewerben Sie sich für den Master of Science in Data Science