因此,我认为代码可能比我能用语言表达更好地解释了我正在尝试做什么,所以接下来是代码:
import abc
class foo(object):
__metaclass__ = abc.ABCMeta
@abc.abstractmethod
def bar(self):
pass
class bar_for_foo_mixin(object):
def bar(self):
print "This should satisfy the abstract method requirement"
class myfoo(foo, bar_for_foo_mixin):
def __init__(self):
print "myfoo __init__ called"
self.bar()
obj = myfoo()
结果如下:
TypeError: Can't instantiate abstract class myfoo with abstract methods bar
我正在尝试让Mixin类满足抽象/接口类的要求,我错过了什么?