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

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

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

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

我們知道電視劇操作很簡(jiǎn)單,但是里面的設(shè)計(jì)和原理很少人明白,這就是因?yàn)殡娨晞〉脑O(shè)計(jì)應(yīng)用了門面模式

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

/**
 * 射頻信號(hào)輸入
 */
public class SignalIn {
    //
}

 * 音頻/視頻信號(hào)輸出
public class SignalOut {

 * 音頻處理
public class AudioProcess {

 * 視頻處理
public class VideoProcess {

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

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

     * 切換頻道
    public void channelSwitch();

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

}

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

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

/**
 * TCL電視機(jī)
 */
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() {
}

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

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

相關(guān)文章

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

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

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

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

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

    Java由淺入深講解繼承上

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

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

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

    Java中null的意義及其使用時(shí)的注意事項(xiàng)說明

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

    Java利用配置重試策略解決超時(shí)問題

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

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

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

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

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

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

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

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

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

最新評(píng)論