调用父类方法的方式
在Python中,如果子类想要调用父类的方法,有以下三种常见的方式:
● 直接使用父类名.方法名 (self) 的形式,例如 Master.make_cake (self)。
● 使用 super (子类名,self).父类方法名 () 的形式,例如 super (Prentice, self).make_cake ()。这种方式适用于新式类,可以自动找到合适的父类方法。
● 使用 super ().父类方法名 () 的形式,例如 super ().make_cake ()。这种方式是第二种方式的简写,也适用于新式类,但不需要指定子类名和self。
如果子类重写了父类的构造方法(__init__),那么在子类的构造方法中,需要显式地调用父类的构造方法,否则父类的构造方法不会执行。调用父类的构造方法有两种方式:
● 使用 super (子类名,self).__init__ (参数) 的形式,例如 super (Person, self).__init__ (name)。
● 使用 父类名.__init__ (self, 参数) 的形式,例如 People.__init__ (self, name)。这种方式称为未绑定方法,需要手动给self传值。
如果涉及到多继承,那么super函数只能调用第一个直接父类的构造方法,如果要调用其他父类的构造方法,需要使用未绑定方法。
下面是一个简单的例子,演示了Python中调用父类方法的用法:
# 定义一个父类
class Animal:
def __ini