Python模板方法模式

2017-03-19  本文已影响65人  虾想家

模板方法模式,在父类中确定步骤的执行过程,子类无法更改执行过程顺序。

class Template(object):
    def __init__(self):
        super().__init__()

    def do(self):
        self.do_first()
        self.do_second()
        self.do_thrid()

    def do_first(self):
        raise NotImplementedError

    def do_second(self):
        raise NotImplementedError

    def do_thrid(self):
        raise NotImplementedError


class ConcreteObj(Template):
    def do_first(self):
        print("first")

    def do_second(self):
        print("second")

    def do_thrid(self):
        print("thrid")


def main():
    obj = ConcreteObj()
    obj.do()


if __name__ == '__main__':
    main()
上一篇 下一篇

猜你喜欢

热点阅读