1,类
python支持多重继承,一个子类可以继承多个直接的父类,即
语法格式为:
class 类名(父类1,。。。,父类n):
类体
如果类定义中没有指定父类,如class car:,python系统中有一个object类,他是所有类的父类,这时就默认父类为object类。
object类中定义了一些所有类共有的默认实现,如:new()。
2,super()方法
super()是一个特殊函数,让你能够调用父类的方法
使用格式
子类中
def 父类的同名方法(self,形参列表):
super().父类的同名方法(形参列表)
super()相当于把父类方法中的代码复制过来,当然在super()下一行你也可以自由添加你想要的操作的代码。
以下是python编程-从入门到实践9-6答案
3,多重继承
python支持多重继承,一个子类可以有多个“直接父类”。这样,就具备了“多个父类”的特点。但由于这样会被“类的整体层次”搞得异常复杂,尽量避免使用。
3.1 MRO()
如果继承的父类中有相同名字的方法,在子类没有指定父类名时,解释器将“从左向右”按顺序搜索。
MRO()方法解析顺序我们可以使用mro()方法获得“类的层次结构”,方法解析顺序也是按照这个层次结构寻找的。
重写父类的方法
对于父类的方法,只要他不符合子类模拟实物的行为,都可以进行重写。
可在子类中定义一个与要重写的父类方法同名的方法,这时python将不会考虑这个父类方法,而只关注你在子类中定义的相应方法。
以上内容为原创,转载请注明https://blog.csdn.net/xvxianhe/article/details/116045263