4

私は以下のpythonコードを試していました:

from abc import ABCMeta, abstractmethod

class Bar:

    __metaclass__ = ABCMeta

    @abstractmethod
    def foo(self):
        pass


class Bar2(Bar):
    def foo2(self):
        print("Foo2")


b = Bar()
b2 = Bar2()

@abstractmethod抽象メソッドを実装していないため、親クラスが抽象になり、子クラスも抽象になることが保証されると思いました。しかし、ここでは、両方のクラスをインスタンス化しようとしてもエラーは発生しません。

誰でも理由を説明できますか?

4

1 に答える 1