外觀模式的目的是為類的調用提供一個統一的接口,用戶只需要通過這個接口就可以實現內部復雜類的方法,無須詳細了解內部復雜類的具體實現方式,降低系統調用的復雜度。
下例仍以畫圖形為例說明外觀模式的用法。Shape接口類有兩個實現類Circle和Rectangle,其內部具體的畫圓和畫矩形可能較為復雜,為此,設計了一個外觀類ShapeMaker,通過ShapeMaker類的調用就可以實現畫圓和畫矩形的功能,用戶完全不需要了解Circle和Rectangle類的內容代碼。
外觀模式常用于應用程序的對外接口設計,通過設計一個外觀類,不了解應程序內部代碼的人也可以輕松應用程序的相關功能,有利于程序的模塊化設計。
Shape接口類:
package facade;
public interface Shape {
public void draw();
}
Circle實現類:
package facade;
public class Circle implements Shape{
@Override
public void draw() {
System.out.println("畫圓形");
}
}
Rectangle實現類:
package facade;
public class Rectangle implements Shape{
@Override
public void draw() {
System.out.println("畫矩形");
}
}
ShapeMaker外觀類:
package facade;
public class ShapeMaker {
private Shape circle;
private Shape rectangle;
public ShapeMaker() {
circle=new Circle();
rectangle=new Rectangle();
}
public void circleDraw() {
circle.draw();
}
public void rectangleDraw() {
rectangle.draw();
}
}
主函數調用方式:
package main;
import facade.*;
public class FacadePattern {
public static void main(String[] args) {
ShapeMaker shapeMaker=new ShapeMaker();
shapeMaker.circleDraw();
shapeMaker.rectangleDraw();
}
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
printf函數
+關注
關注
0文章
31瀏覽量
6049
發布評論請先 登錄
相關推薦
熱點推薦
基于FPGA的I2C SLAVE模式總線的設計方案
本文以標準的I2C 總線協議為基礎,提出了一種基于FPGA的I2C SLAVE 模式總線的設計方案。方案主要介紹了SLAVE 模式的特點。給出了設計的原理框圖和modelsim 下的行
發表于 02-26 11:39
?1.4w次閱讀
百靈鳥電路的設計方案
百靈鳥電路的設計方案電子技術綜合課程設計報告一、綜合設計的目的與要求:設計一百靈鳥電路,要求:A:在不同的光照下發出高低變化的鳴叫聲;B:周期性的鳴叫 T=2~3秒。
發表于 12-16 11:47
【資料分享】STM32設計方案與示例分享 第一波
本帖最后由 我是大彭 于 2014-3-12 15:52 編輯
STM32設計方案與示例分享第一波分享一下基于STM32單片機的數據記錄裝置設計方案基于STM32的多路電壓測量設計方案嵌入式
發表于 03-12 14:47
車載顯示技術及其應用方案~
的儀表不斷在汽車上應用。下列介紹民用汽車中常見的車載顯示技術及應用,并闡述其設計方案。儀表盤設計解決方案:詳述基于TMS470PLF221RFPQ1的高端帶汽車儀表盤方案詳述為嵌入式圖形應用選擇合適
發表于 12-15 14:19
STM32設計方案與示例分享
都是經典項目,建議下載學習STM32設計方案與示例分享 第一波stm32設計方案與示例分享第二波STM32計方案與示例分享 第三波STM32計方案與示例分享 第四波
發表于 09-03 18:52
一種實用的單片機雙CPU設計方案及其應用
一種實用的單片機雙CPU設計方案及其應用:針對傳統儀表具有的硬件資源不足、速度慢等功能缺陷,提出了一種基于單片機的CPU設計方案,即擴展CPU,直接從主CPU對應的數據顯示I/O口上獲
發表于 08-26 19:15
?35次下載
芯片設計公司ARM推出了新的授權模式,嘗試不同的芯片設計方案
據外媒euronews報道,為了尋求更多的客戶,日前,芯片設計公司ARM推出了新的授權模式,將允許芯片廠商在支付最終選擇費用前嘗試不同的芯片設計方案。

多模式電源管理IC的低功耗設計方案
針對降低多模式電源管理IC在輕載與待機工作模式下功耗,提高其全負載條件下工作效率的需要,提出一種電源管理IC供電系統的設計方案,實現了其在啟動、關斷、重載、輕載以及待機等各種工作情況下的高效率低功耗工作。
評論