一、简介
1、作用
简化代码
2、分类
一个父类可以被多个多个子类继承
一个子类可以继承多个父类---python独有
3、新式类和经典类
python3中,只含义新式类,新式类默认继承Object
python2.7中含义经典类和新式类,新式类需要继承Object
4、方法
类名.__base__查看该类的继承顺序
类.mro(),返回类的调用顺序
classA:print('A')classB(A):print('B')classC(A):print('C')classD(B, C):print('D')print(D.__bases__) #(, )
print(D.mro()) #[, , , , ]
二、单继承
1、派生
派生属性:在子类中,创建父类中没有的属性
派生方法:在子类中,创建父类中没有的方法
2、顺序
1)子类对象的调用顺序
子类属性、方法,若没有到父类的属性、方法,若没有到Object,若没有,则报错
2)调用父类
1)通过子类对象调用,若子类有同名方法,会调用子类的方法
2)通过父类名直接调用父类
3)使用super(类名, 已定义的对象名).类方法名
3、用父类的属性、方法
1)父类名.__init__(self, 父类的其它属性)
2)super().__init__(父类的其它属性)
4、super()