輕松掌握java外觀模式
定義:外觀模式(Facade),為子系統(tǒng)中的一組接口提供一個(gè)一致的界面,定義一個(gè)高層接口,這個(gè)接口使得這一子系統(tǒng)更加容易使用
特點(diǎn):
(1)實(shí)現(xiàn)了子系統(tǒng)與客戶端之間的松耦合關(guān)系。
(2)客戶端屏蔽了子系統(tǒng)組件,減少了客戶端所需處理的對象數(shù)目,并使得子系統(tǒng)使用起來更加容易。
企業(yè)級開發(fā)和常用框架重的應(yīng)用:很多,比如常見的字符串的分割方法spilt也是
具體實(shí)例:
package com.test.faced;
/**
* 以喝茶為例:我們要喝茶,就得有茶具,茶葉,煮茶工具等
*/
public class Demo {
public static void main(String[] args) {
System.out.println("不使用外觀模式時(shí),這些對象都需要客戶自己去準(zhǔn)備");
Tea tea = new Tea("龍井");
TeaSet teaSet = new TeaSet();
TeaTools teaTools = new TeaTools();
System.out.println("喝茶");
System.out.println("使用外觀模式,我們提供一個(gè)茶館對象:");
TeaHouse teaHouse = new TeaHouse();
teaHouse.drinkTead();
System.out.println("喝茶");
}
}
class Tea{
public Tea(String name) {
System.out.println("準(zhǔn)備想要喝的茶的茶葉:"+name);
}
}
class TeaSet{
public TeaSet() {
System.out.println("準(zhǔn)備喝茶要用的茶具");
}
}
class TeaTools{
public TeaTools() {
System.out.println("準(zhǔn)備煮茶要用的工具,煮茶");
}
}
class TeaHouse{
public void drinkTead(){
Tea tea = new Tea("龍井");
TeaSet teaSet = new TeaSet();
TeaTools teaTools = new TeaTools();
System.out.println("請喝茶");
}
}
其實(shí)外觀模式就和我們常提的封裝概念差不多,封裝是將對象封裝起來,而外觀模式,則是將復(fù)雜的流程封裝起來,對外提供一個(gè)統(tǒng)一的接口,讓用戶不用去管整個(gè)復(fù)雜的流程,只關(guān)注流程處理結(jié)果。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Java設(shè)計(jì)模式詳解之門面模式(外觀模式)
- Java設(shè)計(jì)模式之外觀模式(Facade模式)介紹
- java設(shè)計(jì)模式之外觀模式學(xué)習(xí)筆記
- java設(shè)計(jì)模式之外觀模式(Facade)
- Java基于享元模式實(shí)現(xiàn)五子棋游戲功能實(shí)例詳解
- Java基于中介者模式實(shí)現(xiàn)多人聊天室功能示例
- Java使用觀察者模式實(shí)現(xiàn)氣象局高溫預(yù)警功能示例
- Java使用訪問者模式解決公司層級結(jié)構(gòu)圖問題詳解
- Java基于命令模式實(shí)現(xiàn)郵局發(fā)信功能詳解
- Java基于外觀模式實(shí)現(xiàn)美食天下食譜功能實(shí)例詳解
相關(guān)文章
windows 部署JAVA環(huán)境安裝iDea的詳細(xì)步驟
這篇文章主要介紹了windows 部署JAVA環(huán)境安裝iDea的詳細(xì)步驟,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08
Spring擴(kuò)展點(diǎn)之BeanFactoryPostProcessor詳解
這篇文章主要介紹了Spring擴(kuò)展點(diǎn)之BeanFactoryPostProcessor詳解,Spring的設(shè)計(jì)非常優(yōu)雅,有很多的擴(kuò)展點(diǎn)供我們對項(xiàng)目進(jìn)行擴(kuò)展,今天學(xué)習(xí)一下Spring其中擴(kuò)展點(diǎn)之一的BeanFactoryPostProcessor,需要的朋友可以參考下2023-11-11

