@R星校长
第2
关:覆盖方法
在子类继承父类的方法时,若子类需要这个方法具有不同的功能,那么可以通过覆盖(overriding)来重写这个方法。本关的任务是让学习者掌握通过继承覆盖方法。
通过继承覆盖方法,也就是在子类里再写一个与父类中一样的方法,实现自己想要实现的功能。例如:
class Parent:
def sayHello(self):
print("hello,i am class parent")
class Subclass(Parent):
def sayHello(self):
print("hello,i am class subclass")
sc = Subclass()
sc.sayHello()
结果为:
hello,i am class subclass
Subclass
继承了Parent
类,但是因为它在类中重写了sayHello()
,所以在创建实例后,调用的是重写后的sayHello()
。
调用父类方法
在重写了父类中的方法后,也可以调用父类中的被重写方法。这时就是去调用一个未绑定的父类方法。例如:
Parent.sayHello