考虑(蟒蛇):
假设全局函数:default_start()
, main_behaviour()
, default_end()
, custom_start()
, 和custom_end()
仅作为代码填充用于说明目的。
class Parent:
def on_start_main(self):
default_start()
def main_behaviour(self):
main_behaviour()
def on_end_main(self):
default_end()
def main(self):
self.on_start_main()
self.main_behaviour()
self.on_end_main()
class Child(Parent):
def on_start_main(self):
custom_start()
def on_end_main(self):
custom_end()
对比
class Parent:
def main_behaviour(self):
main_behaviour()
def main(self):
default_start()
self.main_behaviour()
default_end()
class Child(Parent):
def main(self):
custom_start()
Parent.main_behaviour(self)
custom_end()
我不知道其中哪一个更可取,但我怀疑第二个。这是品味问题,还是有具体原因为什么一个比另一个更好?
谢谢