ポリモーフィズム

  • はじめに オブジェクト指向プログラミングにおけるポリモーフィズムについて学びましょう。ポリモーフィズムは、異なるクラスで同じインターフェースを実装し、同じ操作で異なる振る舞いをする仕組みです。では、二人の説明を見ていきましょう。
Gal Normal

ポリモーフィズムってなに?

Geek Curious

異なるクラスで同じインターフェースを実装し、同じ操作で異なる振る舞いをする仕組みだよね?

Gal Happy

そうなの!ポリモーフィズムを使うことで、コードが柔軟になって、機能拡張が簡単になるの!

Gal Pleased

Pythonでは、異なるクラスで同じメソッド名を使って実装することで、ポリモーフィズムを実現するの。例えば、こんな感じ!

class Dog:
    def speak(self):
        return 'Woof!'

class Cat:
    def speak(self):
        return 'Meow!'

def make_sound(animal):
    print(animal.speak())

dog = Dog()
cat = Cat()

make_sound(dog)
make_sound(cat)
Geek Happy

なるほど、異なるクラスで同じメソッド名を使って実装することで、ポリモーフィズムが実現されるんだね!

Gal Happy

そうなの!これで、同じ操作で異なる振る舞いをさせることができるようになるの!

  • おわりに オブジェクト指向プログラミングのポリモーフィズムでは、異なるクラスで同じインターフェースを実装し、同じ操作で異なる振る舞いをする仕組みが提供されます。これで、コードが柔軟になり、機能拡張が簡単になりましたね!😀