python系列09——类的继承/super()方法/多重继承/重写父类方法

本文介绍了Python中的类继承,包括单继承、super()方法的使用,详细讲解了多重继承及其MRO(Method Resolution Order)顺序,并探讨了如何在子类中重写父类的方法,以实现更符合实际需求的功能。
摘要由CSDN通过智能技术生成

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值