#既然是抽象,那么肯定不会是要求严格的方式进行
#上一章说过手工检查各个方法,但python几乎只依赖鸭子类型
#鸭子类型的理解:如果走起来像鸭子,叫起来像鸭子,那它就是鸭子
#通过假设所有对象都能完成其工作,并偶尔使用hasattr来实现
#python通过引入模块abc提供了官方的解决方法
#一般来说,抽象类是不能至少不应该实例化的类,其职责在于定义子类应实现的一组抽象方法
from abc import ABC,abstractmethod
class Talker(ABC) :
@abstractmethod
def talk(self) :
pass
</