ポリモーフィズム

クラスが異なるオブジェクトでも同じように呼び出すことが可能で、同じ呼び出しでもクラスごとに処理内容を切り替える事ができる。

クラスごとに違う関数名をつけられないように抽象基底クラスを使って強制するテクニックがある。
Pythonでは、抽象基底クラスのメソッドに@abstractmethodデコレータをつけることで、子クラスにメソッドのオーバーライドを強制させる事ができる。