Python設計模式之適配器模式原理與用法詳解
本文實例講述了Python設計模式之適配器模式原理與用法。分享給大家供大家參考,具體如下:
適配器模式(Adapter Pattern):將一個類的接口轉換成為客戶希望的另外一個接口.
下面是一個適配器模式的demo:
#!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'Andy' """ 大話設計模式 設計模式——適配器模式 適配器模式(Adapter Pattern):將一個類的接口轉換成為客戶希望的另外一個接口.Adapter Pattern使得原本由于接口不兼容而不能一起工作的那些類可以一起工作. 應用場景:系統(tǒng)數(shù)據(jù)和行為都正確,但接口不符合時,目的是使控制范圍之外的一個原有對象與某個接口匹配,適配器模式主要應用于希望復用一些現(xiàn)存的類,但接口又與復用環(huán)境不一致的情況 """ class Target(object): def request(self): print "普通請求" class Adaptee(object): def specific_request(self): print "特殊請求" class Adapter(Target): def __init__(self): self.adaptee = Adaptee() def request(self): self.adaptee.specific_request() if __name__ == "__main__": target = Adapter() target.request()
#!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'Andy' """ 大話設計模式 設計模式——適配器模式 適配器模式(Adapter Pattern):將一個類的接口轉換成為客戶希望的另外一個接口.Adapter Pattern使得原本由于接口不兼容而不能一起工作的那些類可以一起工作. 應用場景:系統(tǒng)數(shù)據(jù)和行為都正確,但接口不符合時,目的是使控制范圍之外的一個原有對象與某個接口匹配,適配器模式主要應用于希望復用一些現(xiàn)存的類,但接口又與復用環(huán)境不一致的情況 """ class Target(object): def request(self): print "普通請求" class Adaptee(object): def specific_request(self): print "特殊請求" class Adapter(Target): def __init__(self): self.adaptee = Adaptee() def request(self): self.adaptee.specific_request() if __name__ == "__main__": target = Adapter() target.request()
上面類的設計如下圖:
系統(tǒng)數(shù)據(jù)和行為都正確,但接口不符合時,目的是使控制范圍之外的一個原有對象與某個接口匹配,適配器模式主要應用于希望復用一些現(xiàn)存的類,但接口又與復用環(huán)境不一致的情況
更多關于Python相關內(nèi)容可查看本站專題:《Python數(shù)據(jù)結構與算法教程》、《Python Socket編程技巧總結》、《Python函數(shù)使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經(jīng)典教程》
希望本文所述對大家Python程序設計有所幫助。
相關文章
python實現(xiàn)將文件夾內(nèi)的每張圖片批量分割成多張
這篇文章主要為大家詳細介紹了python實現(xiàn)將文件夾內(nèi)的每張圖片批量分割成多張,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-07-07通過LyScript實現(xiàn)從文本中讀寫ShellCode
LyScript 插件通過配合內(nèi)存讀寫,可實現(xiàn)對特定位置的ShellCode代碼的導出。本文將利用這一特性實現(xiàn)從文本中讀寫ShellCode,感興趣的可以了解一下2022-08-08在ubuntu16.04中將python3設置為默認的命令寫法
這篇文章主要介紹了在ubuntu16.04中將python3設置為默認python的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2018-10-10