在派生类中使用基类方法作为装饰器

时间:2014-01-24 12:25:27

标签: python

我遇到过一种情况,我有一个基类和多个派生类。在每个派生类中,我正在执行从给予方法的输入中提取公共数据的操作。因此,我在基类中将该段代码编写为方法,以便派生类可以直接使用它。但我想从我想要执行此操作的每个方法中调用此函数。我的问题是,我可以为这个动作写一个装饰器吗?我希望这个装饰器成为基类的成员。 是否可以在派生类中使用基类方法作为装饰器?

1 个答案:

答案 0 :(得分:1)

基类:

class BaseRequestHandler(object):

    def __init__(self):
        self.request=None
        self.response=None

    def extractheader(self,requestin):
        ##extracts header from incoming request

派生类:

class DerivedRequestHandler1(BaseRequestHandler):

    def __init__(self):
        super(DerivedRequestHandler1, self).__init__()  

    def handlermethod(self,requestin)
        ##extract headed
        ##call internal API with header