''' 适配器模式(Adapter) 应用:将一个类的接口转换成客户期望的另一个接口,使得原本由于接口不兼容而无法一起工作的类能够一起工作。 ''' ######################################################################## # 定义一个目标接口Target和一个与之不兼容的类Adaptee ############################################################################ # 目标接口 class Target: def request(self): pass # 需要适配的类 class Adaptee: def specific_request(self): print("Called Adaptee's specific_request.") ######################################################################## # 定义一个适配器类Adapter,它实现了Target接口,并且持有Adaptee的实例, # 从而能够在request方法中调用Adaptee的specific_request方法 # 一个继承,一个当参数加入构造函数 ############################################################################ # 适配器 class Adapter(Target): def __init__(self, adaptee): self.adaptee = adaptee def request(self): # 调用Adaptee的specific_request方法 self.adaptee.specific_request() if __name__ == "__main__": # 创建Adaptee实例 adaptee = Adaptee() # 创建Adapter实例,将Adaptee实例作为参数传递 adapter = Adapter(adaptee) # 客户端调用Target的request方法,实际上调用的是Adaptee的specific_request方法 adapter.request()