詳解java設(shè)計模式中的門面模式
門面模式又叫外觀模式(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)文章
Eclipse轉(zhuǎn)Itellij IDEA導(dǎo)入Git/svn本地項目的詳細步驟
這篇文章主要介紹了Eclipse轉(zhuǎn)Itellij IDEA導(dǎo)入Git/svn本地項目,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10
如何調(diào)用chatGPT實現(xiàn)代碼機器人
最近chatGPT也是非常的火爆,相信大家都看到了,現(xiàn)在提供一種Java調(diào)用chatGPT的方法,我們主要通過兩個工具來實現(xiàn),一就是httpclient,二就是hutool,你覺得那種好理解你就用那種即可,今天通過本文給大家分享調(diào)用chatGPT實現(xiàn)代碼機器人,感興趣的朋友一起看看吧2022-12-12

