抽象类
1、什么是抽象类?
抽象类:是一种特殊的类,只能被继承,不能实例化。
抽象类中,只能有抽象方法(没有实现功能),该类不能被实例化,子类必须实现抽象类的方法,
2、用处?
可以用来统一接口
import abc # 利用abc模块实现抽象类
class ALL_file(metaclass=abc.ABCMeta): # 只能被继承,不能被实例化
all_type = 'animal' # 公共的自然属性都是动物,也就是数据属性
@abc.abstractmethod
def run(self): # 相当于统一名字,不用具体实现某种功能,
pass
class person1(ALL_file):
def run(self): # 被ALL_file 统一名字,但是有其自己的功能
print('peison in walking')
class dog1(ALL_file):
def run(self): # 被ALL_file 统一名字,但是有其自己的功能
print('dog is running')
person11 = person1()
dog11 = dog1()
person11.run() # 这样在调用行走方式的时候,就必须按照抽象类统一标准来调用。
dog11.run()
3、上面分别生成两个对象,人和狗,两个对象分别都有自己的功能,但是因为继承了抽象,被抽象类所限制,两个对象的功能里面必须有一个run()这个名字,功能可以不一样,但是功能的名字必须统一。