Quando a classe base e a classe derivada têm funções de membro com exatamente o mesmo nome, mesmo tipo de retorno e mesma lista de argumentos, então se diz que está substituindo a função.
Substituição de função usando C ++
O exemplo a seguir mostra como a substituição de função é feita em C ++, que é uma linguagem de programação orientada a objeto -
#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;
}
Ele irá produzir a seguinte saída
Derived Class
Substituição de função usando Python
O exemplo a seguir mostra como realizar a substituição de funções em Python, que é uma linguagem de programação funcional -
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()
Ele produzirá a seguinte saída -
Base Class
Derived Class