流畅的python第十一章接口学习记录
鸭子协议(忽略对象真正类型,转而关注对象有没有实现所需的方法,签名和语义)
标准库中的抽象基类
collections.abc模块中的抽象基类
抽象方法是抽象基类中用来强制子类必须实现的方法,如果子类不实现该方法,则会报错
上述例子中的load,pick属于抽象方法,Tombola的子类必须实现这两个方法,否则报错
实际上,抽象基类的定义需要对python有深入的了解,一般来说只需要能够理解看懂源码即可。
抽象基类的句法详解
鸭子协议(忽略对象真正类型,转而关注对象有没有实现所需的方法,签名和语义)
标准库中的抽象基类
collections.abc模块中的抽象基类
抽象方法是抽象基类中用来强制子类必须实现的方法,如果子类不实现该方法,则会报错
上述例子中的load,pick属于抽象方法,Tombola的子类必须实现这两个方法,否则报错
实际上,抽象基类的定义需要对python有深入的了解,一般来说只需要能够理解看懂源码即可。
抽象基类的句法详解