想象這樣乙個場景:在之前的手機上面都是有乙個耳機孔的,但是現在卻逐漸的取消,只有乙個type介面。在這種情況下,我們需要乙個type介面的轉化器。在這種情況下,解決方法就有兩種:1)將耳機的插口也換成type的;2)為了使之前的耳機還能使用,我們需要乙個轉介面。即一邊是插入type介面的,一邊是插入那種圓形的耳機的。解決方案二中的轉接器其實就是乙個介面卡。其將一些老的介面進行適配從而可以滿足新的介面需求。
public
class
earphone
;}
inte***ce
phone
//物件介面卡
public
class
adaptee
implements
phone
@override
public
void
play()
}
public
class
test
}
public
class
adapter
extends
earphone
implements
phone
}
public
class
test
}
介面卡就是將舊的類進行適配,從而滿足新的需求。其實看起來就像是新建乙個子類,然後對其中的方法進行重寫,然後利用多型的性質,呼叫新的子類的方法。說其是介面卡可能就是因為介面卡是適配兩個不同的物件,而不是那種具有父子類關係的 設計模式 介面卡模式 類介面卡 物件介面卡
乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...
設計模式之介面卡模式(類介面卡模式)
介面卡模式,即定義乙個包裝類,用於包裝不相容介面的物件 包裝類 介面卡adapter 被包裝物件 適配者adaptee 被適配的類 把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本介面不匹配而無法一起工作的兩個類能夠在一起工作。介面卡模式的形式分為 類的介面卡模式和物件的介面卡模式 模式原理...
設計模式 介面卡模式
01 02 author rollen holt 設計模式之 介面卡模式 03 04 05 inte ce window 11 12 abstract class windowadapter 16 public void close 19 public void activated 22 publi...