Functional-programming-function-overriding

提供:Dev Guides
移動先:案内検索

関数のオーバーライド

基本クラスと派生クラスに、まったく同じ名前、同じ戻り値型、同じ引数リストを持つメンバー関数がある場合、それは関数オーバーライドと呼ばれます。

C ++を使用した関数のオーバーライド

次の例は、オブジェクト指向プログラミング言語であるC ++で関数のオーバーライドが行われる方法を示しています-

#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;
}

次の出力が生成されます

Derived Class

Pythonを使用した関数のオーバーライド

次の例は、関数型プログラミング言語であるPythonで関数のオーバーライドを実行する方法を示しています-

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()

それは次の出力を生成します-

Base Class
Derived Class