python抽象类
- python中没有接口类型
- 抽象类的本质还是类,指的是一组类的相似性,包括数据属性(如all_type)和函数属性(如read、write),而接口只强调函数属性的相似性。抽象类是一个介于类和接口直接的一个概念,同时具备类和接口的部分特性,可以用来实现归一化设计
- 在Python3中引入了abc模块,通过@abc.abstractmethod可以更加简洁地使用抽象类,抽象方法。
- 抽象类的方法必须在子类中实现
import abc class CopyBase(metaclass=abc.ABCMeta): @abc.abstractmethod def save(self): pass class CopyPaper(CopyBase): def __init__(self): pass def save(self): print("copy paper") class CopyQuestion(CopyBase): def __init__(self): pass copy_paper = CopyPaper() copy_paper.save() copy_question = CopyQuestion() copy_question.save() result: copy paper Traceback (most recent call last): copy_question = CopyQuestion() TypeError: Can't instantiate abstract class CopyQuestion with abstract methods save
posted on 2019-09-09 21:40 ybl20000418 阅读(133) 评论(0) 收藏 举报
浙公网安备 33010602011771号