多態(tài)繼承順序
class?A(object): ????def?__init__(self,?a): ????????print?('init?A...') ????????self.a?=?a class?B(A): ????def?__init__(self,?a): ????????super(B,?self).__init__(a) ????????print?('init?B...') class?C(A): ????def?__init__(self,?a): ????????super(C,?self).__init__(a) ????????print?('init?C...') class?D(B,?C): ????def?__init__(self,?a): ????????super(D,?self).__init__(a) ????????print?('init?D...') ???? d?=?D('d')
在這個(gè)例子里面輸出是按A,C ,B,D的順序輸出的,所以子類在繼承的時(shí)候順序具體是怎樣的呢?根據(jù)是什么?
2021-02-15
你試試把class D(B,C)改成class D(C,B),輸出順序會(huì)有所改變,試試總結(jié)規(guī)律