欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解java設(shè)計模式中的門面模式

 更新時間:2022年02月02日 08:26:51   作者:Mars.wang  
門面模式又叫外觀模式(Facade?Pattern),主要用于隱藏系統(tǒng)的復(fù)雜性,并向客戶端提供了一個客戶端可以訪問系統(tǒng)的接口,本文通過實例代碼給大家介紹下java門面模式的相關(guān)知識,感興趣的朋友一起看看吧

門面模式又叫外觀模式(Facade Pattern),主要用于隱藏系統(tǒng)的復(fù)雜性,并向客戶端提供了一個客戶端可以訪問系統(tǒng)的接口。

我們知道電視劇操作很簡單,但是里面的設(shè)計和原理很少人明白,這就是因為電視劇的設(shè)計應(yīng)用了門面模式

一個電視劇至少需要有以下幾個模塊的功能:信號輸入、音頻處理、視頻處理、信號輸出等

/**
 * 射頻信號輸入
 */
public class SignalIn {
    //
}

 * 音頻/視頻信號輸出
public class SignalOut {

 * 音頻處理
public class AudioProcess {

 * 視頻處理
public class VideoProcess {

這里面的原理只有少數(shù)專業(yè)人士才能明白,為了讓普通人都能使用電視劇,我們需要給電視劇提供一個易用的接口

/**
 * 電視機
 */
public interface Television {
    /**
     * 電源開關(guān)
     */
    public void powerSwitch();

     * 切換頻道
    public void channelSwitch();

     * 調(diào)節(jié)音量
    public void volumeAdjust();

}

對于大多數(shù)人而言,會開關(guān)電視,能切換頻道,能調(diào)節(jié)音量就可以了,其他的原理他不需要知道,也能使用電視機。

假如我們買了一天TCL電視,它內(nèi)部設(shè)計可能很復(fù)雜,只要實現(xiàn)了上面的接口,我們就可以使用。

/**
 * TCL電視機
 */
public class TCLTelevision implements Television{
    private SignalIn in;
    private AudioProcess audioProcess;
    private VideoProcess videoProcess;
    private SignalOut out;
    @Override
    public void powerSwitch() {
    }
    public void channelSwitch() {
    public void volumeAdjust() {
}

這就是門面模式的強大之處。隱藏復(fù)雜的邏輯,暴露易用的接口。

到此這篇關(guān)于java設(shè)計模式之門面模式的文章就介紹到這了,更多相關(guān)java門面模式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中可以實現(xiàn)負載均衡的算法詳解

    Java中可以實現(xiàn)負載均衡的算法詳解

    這篇文章主要介紹了Java中可以實現(xiàn)負載均衡的算法詳解,在Java中,有多種算法可以實現(xiàn)負載均衡,下面是兩個常見的算法示例,隨機算法和輪詢算法,需要的朋友可以參考下
    2023-08-08
  • Java透明窗體的設(shè)置方法

    Java透明窗體的設(shè)置方法

    在本文中我們給大家整理了關(guān)于Java透明窗體的設(shè)置方法以及需要注意的地方,需要的朋友們學(xué)習(xí)參考下。
    2019-03-03
  • Java由淺入深講解繼承上

    Java由淺入深講解繼承上

    繼承就是可以直接使用前輩的屬性和方法。自然界如果沒有繼承,那一切都是處于混沌狀態(tài)。多態(tài)是同一個行為具有多個不同表現(xiàn)形式或形態(tài)的能力。多態(tài)就是同一個接口,使用不同的實例而執(zhí)行不同操作
    2022-04-04
  • java?Date獲取本月的開始時間與結(jié)束時間

    java?Date獲取本月的開始時間與結(jié)束時間

    這篇文章主要為大家介紹了java?Date獲取本月的開始時間與結(jié)束時間示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2023-05-05
  • Java中null的意義及其使用時的注意事項說明

    Java中null的意義及其使用時的注意事項說明

    這篇文章主要介紹了Java中null的意義及其使用時的注意事項說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Java利用配置重試策略解決超時問題

    Java利用配置重試策略解決超時問題

    在web應(yīng)用中,由于網(wǎng)絡(luò)原因或其他不可預(yù)測的原因,應(yīng)用間會出現(xiàn)調(diào)用失敗的情形,通過配置重試策略可以有效解決外在原因?qū)е碌南到y(tǒng)故障。本文就來詳細說說如何利用配置重試策略解決超時問題
    2022-10-10
  • Eclipse轉(zhuǎn)Itellij IDEA導(dǎo)入Git/svn本地項目的詳細步驟

    Eclipse轉(zhuǎn)Itellij IDEA導(dǎo)入Git/svn本地項目的詳細步驟

    這篇文章主要介紹了Eclipse轉(zhuǎn)Itellij IDEA導(dǎo)入Git/svn本地項目,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • JWT 設(shè)置token過期時間無效的解決

    JWT 設(shè)置token過期時間無效的解決

    這篇文章主要介紹了JWT 設(shè)置token過期時間無效的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 如何調(diào)用chatGPT實現(xiàn)代碼機器人

    如何調(diào)用chatGPT實現(xiàn)代碼機器人

    最近chatGPT也是非常的火爆,相信大家都看到了,現(xiàn)在提供一種Java調(diào)用chatGPT的方法,我們主要通過兩個工具來實現(xiàn),一就是httpclient,二就是hutool,你覺得那種好理解你就用那種即可,今天通過本文給大家分享調(diào)用chatGPT實現(xiàn)代碼機器人,感興趣的朋友一起看看吧
    2022-12-12
  • 基于Spring實現(xiàn)文件上傳功能

    基于Spring實現(xiàn)文件上傳功能

    這篇文章主要為大家詳細介紹了Spring實現(xiàn)文件上傳功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09

最新評論