重写父类的方法和多态
一、重写父类的方法
1、可以在子类中定义与父类中同名的方法
2、如果父类中的方法不能完全满足子类的需求
3、使用super函数可以在子类的方法中调用父类的方法
class Person:
def walk(self):
print('走路')
def run(self):
print('跑步')
class Men(Person):
def run(self):
print('男人跑步')
super().walk()
men = Men()
men.walk()
men.run()
二、多态
1、封装、继承、多态是面向对象编程的三大优势
2、不同功能的函数可以使用相同的函数名
3、使用相同的函数名可以调用不同功能的函数
4、让函数在外部调用时增加灵活度
5、多态是调用函数的一种技巧
class Person:
def run(self):
print('跑步')
class Men(Person):
def run(self):
print('男人跑步')
class Women(Person):
def run(self):
print('女人跑步')
def func(obj):
obj.run()
men = Men()
women = Women()
func(men)
func(women)