Python--day25--抽象类
什么是抽象类:
抽象类:
1 #一切皆文件 2 import abc #利用abc模块实现抽象类 3 4 class All_file(metaclass=abc.ABCMeta): 5 all_type='file' 6 @abc.abstractmethod #定义抽象方法,无需实现功能 7 def read(self): 8 '子类必须定义读功能' 9 pass 10 11 @abc.abstractmethod #定义抽象方法,无需实现功能 12 def write(self): 13 '子类必须定义写功能' 14 pass 15 16 # class Txt(All_file): 17 # pass 18 # 19 # t1=Txt() #报错,子类没有定义抽象方法 20 21 class Txt(All_file): #子类继承抽象类,但是必须定义read和write方法 22 def read(self): 23 print('文本数据的读取方法') 24 25 def write(self): 26 print('文本数据的读取方法') 27 28 class Sata(All_file): #子类继承抽象类,但是必须定义read和write方法 29 def read(self): 30 print('硬盘数据的读取方法') 31 32 def write(self): 33 print('硬盘数据的读取方法') 34 35 class Process(All_file): #子类继承抽象类,但是必须定义read和write方法 36 def read(self): 37 print('进程数据的读取方法') 38 39 def write(self): 40 print('进程数据的读取方法') 41 42 wenbenwenjian=Txt() 43 44 yingpanwenjian=Sata() 45 46 jinchengwenjian=Process() 47 48 #这样大家都是被归一化了,也就是一切皆文件的思想 49 wenbenwenjian.read() 50 yingpanwenjian.write() 51 jinchengwenjian.read() 52 53 print(wenbenwenjian.all_type) 54 print(yingpanwenjian.all_type) 55 print(jinchengwenjian.all_type)
Python本身就没有接口类,它就是设计模式的一种概念