继承说明:
任何类都直接可间接的继承自object类
object类是一切类的超类
类的 __base__ 属性
__base__属性用来记录此类的基类
示例:
class Human:
pass
class Student(Human):
pass
class Teacher(Human):
pass
Student.__base__ is Human # True
内建类的继承关系见:
>>> help(__builtins__)
覆盖 override
什么是覆盖
覆盖是指在有继承关系的类中,子类中实现了与基类同名的方法,在子类实例调用该方法时,实际调用的是子类中的覆盖版本的方法的现象叫覆盖
问题:
,b能否调用到父类的work方法?
super 函数:
super(type, obj) 返回绑定超类的实例(要求obj必须为type类型的实例)
super() 返回绑定超类的实例,等同于 super(__class__, 实例方法的第一个参数), 必须用在方法内调用
作用:
返回绑定超类的实例,用超类的实例来调用其父类的覆盖方法