外觀模式,一種封裝底層實現的模式。使得呼叫者不用關心誰去具體的完成功能操作,解耦了請求者與操作者,封裝了細節。外觀模式也是一種結構型設計模式。
外觀模式類圖:
[img]
具體demo:
facade介面:
package facadepattern;
public inte***ce facade
具體實現:
package facadepattern;
public class facadeimpl implements facade
public void setb(b b)
@override
public void doa()
@override
public void dob()
}
a介面:
package facadepattern;
public inte***ce a
a實現:
package facadepattern;
public class aimpl implements a
}
b介面:
package facadepattern;
public inte***ce b
b實現:
package facadepattern;
public class bimpl implements b
}
測試類:
package facadepattern;
public class facadetest
}
說明 :說到解耦,在我的理解上,外觀模式是封裝作用最明顯的乙個設計模式,使得呼叫者完全不用關心底層實現由誰去完成。
菜鳥碩楓設計模式系列之21 狀態模式
避免了複雜的條件 取而代之以狀態物件。優勢在於允許物件改變內部狀態。和策略優勢有很多相似之處。狀態模式也是一種行為模式。狀態模式類圖 img 具體 示例 package statepattern public inte ce state package statepattern public cla...
菜鳥碩楓設計模式系列之6 建造者模式
建造者模式是設計模式中另乙個重要的建立物件的方法模式。它的特點主要是穩定了建立的過程,比如下面的例子中就是每個產品的建立過程都包括建立a部分和建立b部分,但不同的builder可以有自己的方式去建立產品,比如不同的房地產商可以建不同的房子 大房子 小房子 只要建造過程穩定一致就可以了。建造者模式類圖...
設計模式系列之八外觀模式
外觀模式 提供了乙個統一的介面,用來訪問子系統的一群介面。外觀定義了乙個高層介面,讓子系統更容易使用。下面通過乙個圖來說明外觀模式的使用,此圖來自於 head first設計模式 一書。從上圖中可以看到,通過乙個統一的facade來呼叫複雜的子系統的類。按我的理解,外觀模式實際上就是抽取一些公共的業...