继承和重写
知识点
单继承定义
多继承定义
1 2 3 4
|
class 类名(父类1, 父类2, 父类3, ... ): 类体
|
方法搜索顺序:__mro__
方法的重写(多态)
备注:当父类的方法无法满足子类的需求时,并且两者实现的方式完全不同,则需要在子类中重写父类的方法
方法的拓展
备注:当父类的方法无法满足子类的需求时,父类封装的方法是子类方法的一部分,此时需要用拓展实现
super类:super是一个特殊的类,super()就是使用super类创建出来的对象,最常使用的场景是在重写父类方法时,调用在父类中封装的方法实现
1 2 3 4 5 6 7 8 9 10
| class Dog:
def bark(self): print("叫")
class fire(Dog): def bark(self): print("这个是新增的内容") super().bark()
|
作业
- (问答)如何定义一个继承类(分单继承、多继承)
- (问答)当父类的方法无法满足子类的需求时,并且两者实现的方式完全不同,此时如何在子类中实现自己的方法
- (问答)当父类的方法无法满足子类的需求时,父类封装的方法是子类方法的一部分,此时如何在子类中实现自己的方法
- (问答)在多继承中,若有多个父类含有相同名称的方法,则此时子类对象调用这些方法,会得出什么结果