吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

外觀模式的目的及其設(shè)計方案

冬至子 ? 來源:全棧開發(fā)的碼農(nóng) ? 作者:全棧開發(fā)的碼農(nóng) ? 2023-06-01 15:32 ? 次閱讀

外觀模式的目的是為類的調(diào)用提供一個統(tǒng)一的接口,用戶只需要通過這個接口就可以實現(xiàn)內(nèi)部復(fù)雜類的方法,無須詳細(xì)了解內(nèi)部復(fù)雜類的具體實現(xiàn)方式,降低系統(tǒng)調(diào)用的復(fù)雜度。

下例仍以畫圖形為例說明外觀模式的用法。Shape接口類有兩個實現(xiàn)類Circle和Rectangle,其內(nèi)部具體的畫圓和畫矩形可能較為復(fù)雜,為此,設(shè)計了一個外觀類ShapeMaker,通過ShapeMaker類的調(diào)用就可以實現(xiàn)畫圓和畫矩形的功能,用戶完全不需要了解Circle和Rectangle類的內(nèi)容代碼。

外觀模式常用于應(yīng)用程序的對外接口設(shè)計,通過設(shè)計一個外觀類,不了解應(yīng)程序內(nèi)部代碼的人也可以輕松應(yīng)用程序的相關(guān)功能,有利于程序的模塊化設(shè)計。

圖片

Shape接口類:

package facade;
public interface Shape {
  public void draw();
}

Circle實現(xiàn)類:

package facade;
public class Circle implements Shape{
  @Override
  public void draw() {
    System.out.println("畫圓形");  
  }
}

Rectangle實現(xiàn)類:

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();
  }
}

主函數(shù)調(diào)用方式:

package main;
import facade.*;
public class FacadePattern {
  public static void main(String[] args) {
    ShapeMaker shapeMaker=new ShapeMaker();
    shapeMaker.circleDraw();
    shapeMaker.rectangleDraw();
  }
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • printf函數(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    31

    瀏覽量

    5921
收藏 人收藏

    評論

    相關(guān)推薦

    基于FPGA的I2C SLAVE模式總線的設(shè)計方案

    本文以標(biāo)準(zhǔn)的I2C 總線協(xié)議為基礎(chǔ),提出了一種基于FPGA的I2C SLAVE 模式總線的設(shè)計方案方案主要介紹了SLAVE 模式的特點。給出了設(shè)計的原理框圖和modelsim 下的行
    發(fā)表于 02-26 11:39 ?1.4w次閱讀

    百靈鳥電路的設(shè)計方案

    百靈鳥電路的設(shè)計方案電子技術(shù)綜合課程設(shè)計報告一、綜合設(shè)計的目的與要求:設(shè)計一百靈鳥電路,要求:A:在不同的光照下發(fā)出高低變化的鳴叫聲;B:周期性的鳴叫 T=2~3秒。
    發(fā)表于 12-16 11:47

    一種實用的單片機(jī)雙CPU設(shè)計方案及其應(yīng)用

    一種實用的單片機(jī)雙CPU設(shè)計方案及其應(yīng)用
    發(fā)表于 08-10 01:00

    關(guān)于 避障 小車 的設(shè)計方案

    請教下 避障小車 的設(shè)計方案 有幾種選擇? 超聲波 避障 如何?有沒有其它設(shè)計方案
    發(fā)表于 08-31 11:54

    【資料分享】STM32設(shè)計方案與示例分享 第一波

    本帖最后由 我是大彭 于 2014-3-12 15:52 編輯 STM32設(shè)計方案與示例分享第一波分享一下基于STM32單片機(jī)的數(shù)據(jù)記錄裝置設(shè)計方案基于STM32的多路電壓測量設(shè)計方案嵌入式
    發(fā)表于 03-12 14:47

    車載顯示技術(shù)及其應(yīng)用方案~

    的儀表不斷在汽車上應(yīng)用。下列介紹民用汽車中常見的車載顯示技術(shù)及應(yīng)用,并闡述其設(shè)計方案。儀表盤設(shè)計解決方案:詳述基于TMS470PLF221RFPQ1的高端帶汽車儀表盤方案詳述為嵌入式圖形應(yīng)用選擇合適
    發(fā)表于 12-15 14:19

    基于單片機(jī)控制的開關(guān)電源及其設(shè)計方案

    很實用的基于單片機(jī)控制的開關(guān)電源及其設(shè)計方案
    發(fā)表于 06-22 12:23

    直立行車參考設(shè)計方案

    直立行車參考設(shè)計方案
    發(fā)表于 08-17 12:19

    STM32設(shè)計方案與示例分享

    都是經(jīng)典項目,建議下載學(xué)習(xí)STM32設(shè)計方案與示例分享 第一波stm32設(shè)計方案與示例分享第二波STM32計方案與示例分享 第三波STM32計方案與示例分享 第四波
    發(fā)表于 09-03 18:52

    變頻器有哪些設(shè)計方案

    了非常廣泛的應(yīng)用。本文為大家介紹幾種變頻器的設(shè)計方案,包含完整軟硬件方案。基于Simulink的數(shù)字下變頻器設(shè)計及其FPGA實現(xiàn)
    發(fā)表于 08-28 07:42

    一種實用的單片機(jī)雙CPU設(shè)計方案及其應(yīng)用

    一種實用的單片機(jī)雙CPU設(shè)計方案及其應(yīng)用:針對傳統(tǒng)儀表具有的硬件資源不足、速度慢等功能缺陷,提出了一種基于單片機(jī)的CPU設(shè)計方案,即擴(kuò)展CPU,直接從主CPU對應(yīng)的數(shù)據(jù)顯示I/O口上獲
    發(fā)表于 08-26 19:15 ?35次下載

    耳溫槍設(shè)計方案設(shè)計

    耳溫槍設(shè)計方案設(shè)計耳溫槍設(shè)計方案設(shè)計耳溫槍設(shè)計方案設(shè)計
    發(fā)表于 11-13 15:58 ?0次下載

    并網(wǎng)逆變器的設(shè)計方案

    并網(wǎng)逆變器的設(shè)計方案并網(wǎng)逆變器的設(shè)計方案并網(wǎng)逆變器的設(shè)計方案
    發(fā)表于 01-11 14:04 ?22次下載

    芯片設(shè)計公司ARM推出了新的授權(quán)模式,嘗試不同的芯片設(shè)計方案

    據(jù)外媒euronews報道,為了尋求更多的客戶,日前,芯片設(shè)計公司ARM推出了新的授權(quán)模式,將允許芯片廠商在支付最終選擇費用前嘗試不同的芯片設(shè)計方案
    的頭像 發(fā)表于 07-23 10:28 ?4289次閱讀
    芯片設(shè)計公司ARM推出了新的授權(quán)<b class='flag-5'>模式</b>,嘗試不同的芯片<b class='flag-5'>設(shè)計方案</b>

    模式電源管理IC的低功耗設(shè)計方案

    針對降低多模式電源管理IC在輕載與待機(jī)工作模式下功耗,提高其全負(fù)載條件下工作效率的需要,提出一種電源管理IC供電系統(tǒng)的設(shè)計方案,實現(xiàn)了其在啟動、關(guān)斷、重載、輕載以及待機(jī)等各種工作情況下的高效率低功耗工作。
    的頭像 發(fā)表于 05-20 09:50 ?3972次閱讀
    真人百家乐官网蓝盾赌场娱乐网规则| 百家乐国际娱乐| 蓝盾百家乐具体玩法| 516棋牌游戏中心| 百家乐官网龙虎台布价格| 百家乐官网路单资料| 女神百家乐官网的玩法技巧和规则| 伯爵百家乐的玩法技巧和规则| bet365.com| 网上百家乐官网是真是假天涯论坛| 百樂坊百家乐的玩法技巧和规则| 调兵山市| 优博百家乐娱乐城| 元游棋牌游戏下载| 百家乐官网技巧下载| 水果老虎机游戏| 百家乐官网变牌器批发| LV百家乐赢钱LV| 百家乐官网赌博外挂| 博彩网百家乐的玩法技巧和规则| 百家乐官网技术交流群| 足球百家乐投注计算| 象山县| 百家乐實戰後二穩賺| 乌兰察布市| 新锦江百家乐娱乐网| 百家乐官网3号眨眼技术| 百家乐真人游戏棋牌| 哪个百家乐官网投注比较好| 大赢家百家乐娱乐| 神人百家乐官网赌博| 大发888娱乐场下载com| 星际百家乐官网娱乐城| 大发888boaicai| 大众百家乐官网的玩法技巧和规则 | 利记国际娱乐| 澳门百家乐的公式| 商水县| 博彩网百家乐全讯网| 百家乐官网大眼仔路| 钱大发888游戏下载|