Funkcja zastępująca
Gdy klasa bazowa i klasa pochodna mają funkcje składowe o dokładnie takiej samej nazwie, tym samym typie zwracanym i tej samej liście argumentów, wówczas mówi się, że jest to funkcja przesłaniająca.
Zastępowanie funkcji przy użyciu C ++
Poniższy przykład pokazuje, jak nadpisywanie funkcji jest wykonywane w C ++, który jest językiem programowania zorientowanym obiektowo -
#include <iostream>
using namespace std;
class A {
public:
void display() {
cout<<"Base class";
}
};
class B:public A {
public:
void display() {
cout<<"Derived Class";
}
};
int main() {
B obj;
obj.display();
return 0;
}
Wytworzy następujący wynik
Derived Class
Przesłanianie funkcji za pomocą Pythona
Poniższy przykład pokazuje, jak wykonać przesłanianie funkcji w Pythonie, który jest funkcjonalnym językiem programowania -
class A(object):
def disp(self):
print "Base Class"
class B(A):
def disp(self):
print "Derived Class"
x = A()
y = B()
x.disp()
y.disp()
Wytworzy następujący wynik -
Base Class
Derived Class