python中类的一些方法分析
程序员文章站
2023-11-11 19:57:58
本文实例分析了python中类的一些方法,分享给大家供大家参考。具体分析如下:
先来看看下面这段代码:
class super:
def delegat...
本文实例分析了python中类的一些方法,分享给大家供大家参考。具体分析如下:
先来看看下面这段代码:
class super: def delegate(self): self.action() class provider(super): def action(self): print 'in provider.action' x = provider() x.delegate()
本文实例运行环境为python2.7.6
运行结果如下:
in provider.action
在super类中定义delegate()方法,delegate中调用self.action,在provider子类中实现action方法。子类调用父类的delegate方法时,实际是调用自己的action方法。。
总之一句话:
这里子类实现了父类delegate中所期望的action方法
再来看看下面这段代码:
class super: def delegate(self): self.action() def method(self): print 'super method' class inherit(super): pass class replace(super): def method(self): print "replace method" class extended(super): def method(self): print 'in extended class' super.method(self) print 'out extended class' class provider(super): def action(self): print 'in provider.action' x = inherit() x.method() print '*'*50 y = replace() y.method() print '*'*50 z = extended() z.method() print '*'*50 x = provider() x.delegate()
运行结果如下:
super method ************************************************** replace method ************************************************** in extended class super method out extended class ************************************************** in provider.action
分别继承父类的方法,替换父类的方法,扩展了父类的方法
super类定义了delegate方法并期待子类实现action函数,provider子类实现了action方法.
相信本文所述对大家python程序设计的学习有一定的借鉴价值。
上一篇: js中this的常见用法详解