0

次のような抽象クラスがあります。

class SomeAbstract(object):
    __metaclass__ = ABCMeta

    @abstractproperty
    def one(self): pass

    @abstractproperty
    def two(self): pass

    @abstractproperty
    def three(self): pass

    ...

    @abstractmethod
    def somemethod(self): pass

    ...

抽象クラスのすべてのプロパティとメソッドを抽象として指定する方法はありますか?それらすべてにデコレータを配置する必要はありませんか?

4

1 に答える 1

1

ABCMetaすべてのメソッドとプロパティを自動的に抽象化するから継承する新しいメタクラスを作成し、代わりにそのメタクラスをクラスで使用できます。ただし、抽象ベースから継承するクラスに動作が伝播しないように注意する必要があります。

于 2013-05-24T18:19:08.193 に答える