如何使Python类“真正”抽象

时间:2019-03-14 23:26:44

标签: python oop abstract-class abc

我正在尝试查看是否可以将Python类抽象化,并且在研究时遇到了this Stack Overflow question。但是,似乎ABC仅使子类需要使用@abstractmethod装饰器来实现方法。它不禁止抽象类的直接实例化。要显示代码示例:

from abc import ABC


class Abstract(ABC):
    pass


class Concrete(Abstract):
    pass


if __name__ == '__main__':
    # should raise exception, but doesn't
    jawn = Abstract()

是否有一种方法可以彻底防止Python类的实例化,使其真正抽象化?

0 个答案:

没有答案