国产精品一区二区视频-亚洲狠狠爱-久久久久女人精品毛片九一-99资源站-午夜神马福利-极品尤物一区二区三区-羞羞的视频网站-欧美三区四区-污污网站免费-乱色精品无码一区二区国产盗-国产黄色在线看-国产成人亚洲精品-国产欧美一区二区三区四区-一品毛片-凹凸精品熟女在线观看

適配器模式和裝飾模式的區別

鉅大鋰電  |  點擊量:0  |  2020年02月12日  

裝飾模式

裝飾模式指的是在不必改變原類文件和使用繼承的情況下,動態地擴展一個對象的功能。它是通過創建一個包裝對象,也就是裝飾來包裹真實的對象。


23種設計模式之一,英文叫Decoratorpattern,又叫裝飾者模式。裝飾模式是在不必改變原類文件和使用繼承的情況下,動態地擴展一個對象的功能。它是通過創建一個包裝對象,也就是裝飾來包裹真實的對象。


裝飾模式的特點


(1)裝飾對象和真實對象有相同的接口。這樣客戶端對象就能以和真實對象相同的方式和裝飾對象交互。


(2)裝飾對象包含一個真實對象的引用(reference)


(3)裝飾對象接受所有來自客戶端的請求。它把這些請求轉發給真實的對象。


(4)裝飾對象可以在轉發這些請求以前或以后增加一些附加功能。這樣就確保了在運行時,不用修改給定對象的結構就可以在外部增加附加的功能。在面向對象的設計中,通常是通過繼承來實現對給定類的功能擴展。



適配器模式

在計算機編程中,適配器模式(有時候也稱包裝樣式或者包裝)將一個類的接口適配成用戶所期待的。一個適配允許通常因為接口不兼容而不能在一起工作的類工作在一起,做法是將類自己的接口包裹在一個已存在的類中。


將一個類的接口轉換成客戶希望的另外一個接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些類可以一起工作。GangofFour


基本概念


客戶:需要調用我們的代碼的對象。


Adapter模式的宗旨:保留現有類所提供的服務,向客戶提供接口,以滿足客戶的期望。


主要內容


(1)類適配器:


當客戶在接口中定義了他期望的行為時,我們就可以應用適配器模式,提供一個實現該接口的類,并且擴展已有的類,通過創建子類來實現適配。


下面是類適配器的UML圖:


(2)對象適配器:對象適配器通過組合除了滿足用戶期待接口還降低了代碼間的不良耦合。在工作中推薦使用對象適配。下面是對象適配器的UML圖:(3)缺省適配器模式:缺省適配器模式是一種特殊的適配器模式,但這個適配器是由一個抽象類實現的,并且在抽象類中要實現目標接口中所規定的所有方法,但很多方法的實現都是平庸的實現,也就是說,這些方法都是空方法。而具體的子類都要繼承此抽象類。


裝飾模式與適配器模式的的區別

裝飾模式和適配器模式都有一個別名叫包裝模式,但包裝的形式是不一樣的。


定義上:


裝飾模式:對客戶端透明的方式擴展對象的功能,是繼承關系的一個替代方案,提供比繼承更多的靈活性。使用原來被裝飾的類的一個子類的實例,把客戶端的調用委派到被裝飾類。


適配器模式:把一個類的接口變換成客戶端所期待的另一種接口,從而使原本因接口原因不匹配而無法一起工作的兩個類能夠一起工作。適配類可以根據參數返還一個合適的實例給客戶端。


從定義上看裝飾模式是對核心對象或者功能的擴展,適配器模式是把對象或者功能放到一個新對象中引用。舉個例子,現在書城賣道德經的書,有線裝版,有精裝版,有日文版,有英文版,其中線裝版和精裝版就是裝飾模式,日文版和英文版就是適配器模式,各種版本都是為迎合不同消費者的不同需求。為什么呢?因為線裝版和精裝版的道德經雖然包裝不同,但內容相同,日文版和英文版就不同,這兩個版本的內容就可能和原版的不同,文化差異嘛,翻譯的內容雖來自道德經,但根據不同國家的文化,思維邏輯什么的就可能改變一些想法。


使用條件:


裝飾模式一般在下列情況使用:需要擴展一個類的功能或者給你個類增加附加責任;需要動態的給一個對象增加功能,這些功能可以再動態的撤銷;需要增加有一些基本功能的排列組合而產生非常大量的功能,從而使得繼承關系變得不現實。


適配器模式一般使用的情況包括:系統需要使用現有的類,但此類已經不符合系統的需要;


想要建立一個可以重復使用的類,用于與一些彼此之間沒有太大關聯的一些類,包括一些可能在將來引進的的類一起工作。適配器模式在系統升級的時候使用的頻率很高,對舊系統的一些功能方法在新系統中引用。


Java中的應用:


裝飾模式和適配器模式在java中的I/O文件的操作中都有體現。


Java的IO庫中處理流的類有FIleInputStream,FileOutputStream,DataInputStream,DataOutputStream類等。在InputStream,OutputStream,Reader,Writer結構的內部,有一些流處理器可以對另一些流處理器起到裝飾作用,形成新的,改善的流處理器。這就體現了裝飾模式的作用。同時在一些流處理器的內部有對其他流處理器的功能的適配引用,這體現了適配器模式的優點。


模式概念的出現,完善到合理應用是前輩們在實際的應用中不斷總結的結晶。對于不同的需求合理的使用模式能起到事半功倍的效果,但是模式不是放之四海而皆準的,況且模式也不是一成不變死板的,隨著技術的發展,工程師的智慧總結,可能會有新的模式出現和舊的模式的消亡,模式就是為實際需要而生,沒必要上升到哲學這種高度。


技術專區慕展上,世強帶來的SiC、GaN、三電平讓你的效率直達最high點如何利用二級輸出濾波器防止開關電源噪聲陶瓷垂直貼裝封裝(CVMp)的焊接注意事項及布局DC-DC轉換器的平均小信號數學建模及環路補償設計常用基準穩壓電源產生辦法有哪些?

相關產品

主站蜘蛛池模板: 日韩女优一区 | 亚洲天堂中文字幕在线观看 | 欧美黑粗硬 | 又黄又爽一区二区三区 | 国产日韩欧美综合 | 国产精品男女 | 在线观看免费视频a | 亚洲一区二区在线视频 | 欧美精品另类 | 国产草草影院ccyycom | 亚洲午夜片 | 黑人满足娇妻6699xx | 手机在线观看av | 欧美 日韩 人妻 高清 中文 | 国产香蕉在线视频 | 日韩熟女一区二区 | 日韩综合区 | 国产美女被草 | 日本久热 | 美女视频国产 | 爱爱视频天天干 | 黄色私人影院 | 91av国产视频 | 老师的肉丝玉足夹茎 | 日韩一区二区在线播放 | 国产乱人伦精品一区二区 | 国产精品久久久久av | 黄色高清视频 | 亚洲网友自拍 | 亚欧精品视频一区二区三区 | 亚洲裸体视频 | 一级片免费的 | 日韩羞羞 | 国产主播啪啪 | jizz国产免费 | 亚洲午夜电影网 | 卡通动漫亚洲综合 | 亚洲 在线| 东京干手机福利视频 | 欧美日韩精品亚洲精品 | 欧美性受黑人性爽 | 婷婷色中文网 | 老司机在线精品视频 | 超碰人人人人 | 亚洲午夜视频 | 秋霞午夜伦理 | 美国美女黄色片 | 国内偷拍av | 激情深爱五月 | 一个人看的www视频在线观看 | 日韩精品久久久久久 | 日本美女毛片 | 日韩免费不卡视频 | 人妻少妇精品视频一区二区三区 | 超碰免费公开在线 | 免费观看成人 | 国产手机在线播放 | 久久黄色免费视频 | 黄色一级录像片 | 91久久精品一区二区三区 | 久久麻豆视频 | 中文字幕资源网 | www.亚洲成人 | 亚洲青涩在线 | 日本中文在线视频 | 六月丁香啪啪 | 日本www网站 | 亚洲911精品成人18网站 | 亚洲激情图 | 国产7777777| 久久一卡二卡 | 悠悠色影院| 嫩模啪啪 | 日日干夜夜操 | 成人免费片 | 亚洲加勒比 | 欧美操穴视频 | 欧美用舌头去添高潮 | 亚洲视频中文字幕在线观看 | 国产成人精品久久二区二区 | 精品视频在线看 | 久久精品视频网 | 久久亚洲天堂 | 中文字幕一二三四区 | 久久国产高清 | 亚洲偷拍一区 | 四色成人av永久网址 | 天天拍天天射 | 人人妻人人澡人人爽人人dvd | 自拍偷拍一区二区三区 | 肉色超薄丝袜脚交一区二区 | 一级淫片免费看 | 懂色av| 天堂av官网 | 国产精品人人爽 | 裸体裸乳被免费看视频 | 国产婷婷综合 | 欧美有码视频 | 欧美精品久久久久久久久久 |