Python 3-7 多态

Python 多态

我们都知道,Python 是弱类型语言,其最明显的特征是在使用变量时,无需为其指定具体的数据类型。这会导致一种情况,即同一变量可能会被先后赋值不同的类对象,例如:

class C:
    def say(self):
        print("赋值的是 C类的实例方法")

class Python:
    def say(self):
        print("赋值的是Python 类的实例方法")

a = C()
a.say()

a = Python()
a.say()

运行结果为:

赋值的是 C 类的实例对象
赋值的是 Python 类的实例对象

可以看到,a 可以被先后赋值为 C 类和 Python 类的对象,但这并不是多态。类的多态特性,还要满足以下 2 个前提条件:

猜你喜欢

转载自blog.csdn.net/weixin_43955170/article/details/113105676