day18 Python 使用抽象类和抽象方法来约束子类
from abc import ABCMeta, abstractmethod class Base(metaclass=ABCMeta): # 定义抽象类 @abstractmethod # 定义抽象方法,如果子类不重写这个方法就会继承这个抽象方法,创建对象的时候会报错 TypeError: Can't instantiate abstract class Normal with abstract methods login def login(self): pass class Normal(Base): # def login(self): 1、子类不实现login()方法,那么创建子类对象的时候就会抛出异常 # pass n = Normal() # 2、 TypeError: Can't instantiate abstract class Normal with abstract methods login # 注意:如果抽象类中全部是抽象方法,那么和go语言的接口是一样的。 # 接口:只提供了公开的方法,并没有提供方法的具体实现。