多继承

多继承是指一个类可以有多个父类,从而可以继承多个父类的属性和方法。

它允许一个子类从多个父类中继承属性和方法,从而使得子类可以拥有多个父类的特性。

扩展(方法重写)

类扩展是指将一个类的特性和功能扩展到另一个类。

它允许一个子类从一个父类中继承属性和方法,并增加新的属性和方法。

如上所示的例子,只是把父类的方法重写定义了,以它更具有子类的特性。

这只是扩展的一种方向。
MRO方法解析顺序

MRO(Method Resolution Order)方法解析顺序是指在多层继承结构中,调用某个方法时,Python会按照某种特定的顺序对继承链中的每一层进行搜索,以寻找对应的方法。

cat类是最后派生出来的,上面是animal类,再往上是object类。

前面我们提到过,object是Python中所有类的祖先类。

多态性

多态特性是指同一种行为可以有多种不同的表现形式。它允许一个对象在不同情况下表现出不同的行为,从而更好地适应不同的环境。

当三个子类都具有相同名称的方法时,当传递进的子类实例不同时,可以执行对应的类定义的方法。

通过定义一个公共函数,能够得到不同的执行结果。

PS:本文代码基于Windows 10,Python 3.10.4。