国产精品一区二区视频-亚洲狠狠爱-久久久久女人精品毛片九一-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轉換器的平均小信號數學建模及環路補償設計常用基準穩壓電源產生辦法有哪些?

相關產品

主站蜘蛛池模板: 黄色一级大片在线免费看国产一 | 色妞色视频一区二区三区四区 | 奇米视频在线观看 | av一区二区三 | www.rihan| 97av在线 | 欧美视频自拍偷拍 | 精品无码人妻一区二区免费蜜桃 | 日韩高清在线观看 | 无码h肉动漫在线观看 | 欧美揉bbbbb揉bbbbb | 亚洲精品成人区在线观看 | 色黄啪啪网 | 污污网站在线观看 | 成人免费网址 | 国产亚洲精久久久久久无码77777 | 91成品人影院 | 最新永久地址 | 国产视频最新 | 久久香蕉影视 | 糖心vlog精品一区二区 | 99re在线观看视频 | 在线免费看91 | 国产精成人品免费观看 | 久久久99精品免费观看 | 五月婷婷免费视频 | 亚洲欧美国产精品专区久久 | 岛国大片在线观看 | 中文字幕在线观看视频网站 | 全黄一级裸体片 | 成人在线免费av | 玉势 (1v1 高h) | 国产精品9191 | 成人性生活视频 | 国产精品成人一区二区三区 | 亚洲欧美日韩精品在线 | 乳女教师の诱惑julia | 天堂在线中文 | 亚洲三级伦理 | 色悠悠国产 | 成年人视频在线免费观看 | 亚洲一区二区视频在线观看 | 69中国xxxxxxxxx69 国产在成人精品线拍偷自揄拍 | 神宫寺奈绪一区二区三区 | 电影91久久久 | 国产精品天天看 | 修仙淫交(高h)h文 | 福利在线观看 | 特级免费毛片 | 欧美大片视频 | 高清av网| 国产精品久久久久久久久免费看 | 日本美女毛茸茸 | 少妇高潮露脸国语对白 | 岛国av一区二区 | 中文字幕在线视频一区 | 美女裸体跪姿扒开屁股无内裤 | 欧美在线视频精品 | 999精品 | 毛片a区 | 污片视频在线观看 | 一区二区三区四区在线免费观看 | 伊人69 | 国产啪视频 | 欧美一区二区视频 | 亚洲伊人久久综合 | 波多野结衣大片 | 一区二区三区久久 | 亚洲自拍偷拍综合 | 日韩一区二区三区免费视频 | 象人高潮调教丨vk | 精品福利一区二区 | 欧美成人精品二区三区99精品 | 国产美女av在线 | 奇米影视网 | 久久中文字幕精品 | 亚洲精品一区二区三区蜜臀 | 涩涩涩在线视频 | 成人综合婷婷国产精品久久 | 日韩精品一区二区三区四区五区 | 欧美一区二区三区黄片 | 中文字幕人妻一区二区 | 久草免费福利视频 | 欧美另类老妇 | 国产精品一区二区免费视频 | 爆乳2把你榨干哦ova在线观看 | 高清一区二区三区四区 | 精品人人妻人人澡人人爽牛牛 | 亚洲经典一区二区三区四区 | 亚洲人xxx日本人18 | 国产91综合一区在线观看 | 久久一级电影 | 久久精品免费在线观看 | 国产又黄又湿 | 国产精品主播一区二区 | 久久久婷婷| 朋友的姐姐2在线观看 | 青青草视频免费播放 | 都市激情第一页 |