1
如何在完全構造類之前調用的方法中實現類超級行爲。我可以實現這樣一系列相互依賴的方法嗎?在課堂施工中正確實施方法繼承
from six import with_metaclass
class Meta(type):
"""a metaclass"""
def __init__(cls, name, bases, classdict):
cls.setup_class()
def setup_class(cls):
pass
class A(with_metaclass(Meta, object)):
"""a class"""
@classmethod
def instantiate(cls, name):
print("instantiating through '%s'" % name)
@classmethod
def setup_class(cls):
cls.instantiate('A')
class B(A):
@classmethod
def setup_class(cls):
super(B, cls).setup_class()
cls.instantiate('B')
class C(B) pass
顯然,這不能工作,雖然,因爲B
當setup_class
被稱爲不正常存在。