mix-in

为了避免多重继承, Python 提出 mix-in 解决方案。

mix-in 就是一个简化的类,没有实例属性,

将一些通用的方法集成在其中。

class LogMixin(object):
  
    def start_log(self):
        print("Start log ...")

    def end_log(self):
        print("End log ...")


class T(LogMixin):

    def __init__(self, value):
        self.value = value

    def start(self):
        self.start_log()
        print(self.value)
        self.end_log()


t = T(5) 
t.start()

# Start log ...
# 5
# End log ...