[python] 定义抽象基类(Abstract Base Classes)
抽象基类一般用于规定子类必须重新定义某些方法。比如 web 框架中的 cache 部分的基类一般类似下面这样:
class BaseCache(object):
def get(self, key):
raise NotImplementedError('subclasses of BaseCache must provide a get() method')
def set(self, key, value, timeout=60):
raise NotImplementedError('subclasses of BaseCache must provide a set() method')
class MemcachedCache(BaseCache):
def get(self, key):
value = self._cache ...