Java 設計模式之擴充卡模式,
Java 類擴充卡,
Java 對象擴充卡
================================
©Copyright 蕃薯耀 2021-06-30
https://www.cnblogs.com/fanshuyao/
一、類擴充卡
1、目标接口
2、目标類
3、類擴充卡(擴充卡英文是:Adapter,非Adaptor,示例中寫錯了)
4、手機類
5、用戶端測試類
測試結果:
二、對象擴充卡
1、對象擴充卡類
2、用戶端測試類
三、總結
擴充卡模式(Adapter Pattern)
将一個類的接口适配成使用者所期待的。一個适配允許通常因為接口不相容而不能在一起工作的類工作在一起,做法是将類自己的接口包裹在一個已存在的類中。
擴充卡模式的适用環境:
系統需要使用一些現有的類,而這些類的接口(方法)不符合系統的需要,甚至沒有這些類的源代碼建立一個可以重複使用的類,現在就可以使用擴充卡模式。
三個角色:
1:Target(目标抽象類):目标抽象類定義客戶所需的接口,可以是一個抽象類或接口,一般是接口,因為類是單繼承(不好)。
2:Adaptee(适配者類):适配者即需要被适配的角色,它定義了一個已經存在的接口(方法),這個接口需要适配。
3:Adapter(擴充卡類):作為一個轉換器,需要實作Target類,對Adaptee和Target進行适配。它是擴充卡模式的核心。
盡量使用對象的擴充卡模式,多用合成/聚合、少用繼承。
對于類擴充卡,擴充卡可以重定義的部分行為,相當于子類覆寫父類的部分實作方法。
(時間寶貴,分享不易,捐贈回饋,^_^)
今天越懶,明天要做的事越多。