Class Interface Techniques : Interface « Class « Python Tutorial






class Super:
    def method(self):
        print 'in Super.method'            
    def delegate(self):
        self.action(  )                    

class Inheritor(Super):                   
    pass

class Replacer(Super):                    
    def method(self):
        print 'in Replacer.method'

class Extender(Super):                    
    def method(self):
        print 'starting Extender.method'
        Super.method(self)
        print 'ending Extender.method'

class Provider(Super):                    
    def action(self):
        print 'in Provider.action'

for klass in (Inheritor, Replacer, Extender):
    print '\n' + klass.__name__ + '...'
    klass(  ).method(  )
print '\nProvider...'
x = Provider(  )
x.delegate(  )








11.12.Interface
11.12.1.Class Interface Techniques
11.12.2.Function Interfaces and Callback-Based Code