話不多說先上代碼
class A(object):
a = 't'
def __init__(self,config):
print('aa')
print(self.f())
self.config = config
def f(self):
print('a')
def ff(self):
print(self.config.a)
def extral(self):
print('extral a')
class B(object):
def __init__(self):
print('bb')
def f(self):
print('bbbb')
a = 'axx'
class C(A):
def __init__(self,config):
super(C,self).__init__(config)
print("調用順序 ")
config = B()
cc = C(config)
cc.ff()
上面一共涉及3個類(A,B,C),1個實例cc
他們的調用關系是這樣的
C繼承了B和A的類,這裡是實例化C的時候回先實例化B然後是A,同時A有吧B對象賦值給了self.config。這樣C也繼承下來了。接下來在C中和B中都可以通過self.config.“屬性”來使用