python中类的多态性
什么是多态性
多态性是指具有不同功能的函数可以使用相同的函数名,这样就可以用一个函数名调用不同内容的函数。在面向对象方法中一般是这样表述多
态性
class Test01(): def boy(self,values): print("一号男嘉宾"+values) class Test02(): def boy(self,values): print("二号男嘉宾" + values) class Test03(): def boy(self,values): print("三号男嘉宾" + values) p = Test01() p.boy("邀约一号女嘉宾") p = Test02() p.boy("邀约二号女嘉宾") p = Test03() p.boy("邀约三号女嘉宾")
输出结果:
一号男嘉宾邀约一号女嘉宾
二号男嘉宾邀约二号女嘉宾
三号男嘉宾邀约三号女嘉宾
由打印结果可见,同一个变量p在执行同一个参数,函数名完全相同boy()方法时,由于p指向的实例对象不同,程序在实际运行时调用的并不是同一个
boy()方法,代码会自动根据p的具体对象来决定执行哪个boy方法,这就是多态性!
多态性重写父类方法:
class Test01(): def boy(self,values): print("一号男嘉宾"+values) class Test02(Test01): def boy(self,values): print("二号男嘉宾" + values) p = Test02() p.boy("邀约二号女嘉宾") 输出结果"二号男嘉宾邀约二号女嘉宾"