多继承

 

 

 

一、多继承的概念

单继承:子类有一个父类

多继承:子类有多个父类。并且具有所有父类的属性和方法。【例1】

 

语法:


 

 

例1:

 

结果:

 

 

二、MRO方法搜索顺序

 

有一种情况:不同的父类中有相同的方法,那继承之后调用的哪一个呢?

首先我们要尽量避免这种情况。

 

如果实在避免不了,可以通过__mro__属性来查看调用的是哪个方法。

 

 

 

例:

 

结果:

 

执行的是A类的fun()方法。

通过C.__mro__属性,可以看到首先是按照C类、A类、B类、object类的顺序来搜索方法的。(因为先继承的A,再继承的B,所以A在前。)

 

 

 

三、新式类和旧式(经典)类

旧式类:不以object类为基类的类。

新式类:以object类为基类的类。

 

在Python2.0 中,如果指定了父类是object类,才是新式类。如果没有执行父类,那么就是旧式类。

在Python3.0中,如果没指定,默认就使用object作为基类,所以python3.0类都是新式类。

 

 

 

 

四、isinstance()方法、issubclass()方法

1. isinstance()方法

判断对象是否是某一类型。类似与type()

 

 

例:

 

结果:

 

例:

 

结果:

 

 

2. issunclass()

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值