【python】抽象基类 from abc import ABC, abstractmethod

abc模块作用

Python本身不提供抽象类和接口机制,要想实现抽象类,可以借助abc模块。ABC是Abstract Base Class的缩写。

假设我们定义一些抽象方法,然后子类继承的时候必须要重写这些方法。出于这个目标,我们就要用到abc这个包。@abstractmethod表示这个方法是一个抽象方法,子类必须重写。

同时,由于有性质:抽象类是用来继承的,而不是用来实例化的。此时,如果我们实例化animal,将报错

from abc import ABC, abstractmethod

class animal(ABC): 
    @abstractmethod
    def speak(self):
        pass

如果实现一个子类Cat,子类必须重写speak方法

class Cat(animal):
    def speak(self):
        pass
    def other(self):
        pass

 

posted @   AliceYing  阅读(334)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示