溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JAVA外觀模式怎么實現(xiàn)

發(fā)布時間:2022-06-07 09:32:14 來源:億速云 閱讀:123 作者:iii 欄目:編程語言

這篇文章主要介紹了JAVA外觀模式怎么實現(xiàn)的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇JAVA外觀模式怎么實現(xiàn)文章都會有所收獲,下面我們一起來看看吧。

JAVA外觀模式怎么實現(xiàn)

外觀(Facade)模式又叫作門面模式,是一種通過為多個復雜的子系統(tǒng)提供一個一致的接口,而使這些子系統(tǒng)更加容易被訪問的模式。該模式對外有一個統(tǒng)一接口,外部應用程序不用關心內部子系統(tǒng)的具體細節(jié),這樣會大大降低應用程序的復雜度,提高了程序的可維護性。

優(yōu)點

1、降低了子系統(tǒng)與客戶端之間的耦合度,使得子系統(tǒng)的變化不會影響調用它的客戶類。
2、對客戶屏蔽了子系統(tǒng)組件,減少了客戶處理的對象數(shù)目,并使得子系統(tǒng)使用起來更加容易。
3、降低了大型軟件系統(tǒng)中的編譯依賴性,簡化了系統(tǒng)在不同平臺之間的移植過程,因為編譯一個子系統(tǒng)不會影響其他的子系統(tǒng),也不會影響外觀對象。

缺點

1、不能很好地限制客戶使用子系統(tǒng)類,很容易帶來未知風險。
2、增加新的子系統(tǒng)可能需要修改外觀類或客戶端的源代碼,違背了“開閉原則”。

知識點

外觀(Facade)模式的結構比較簡單,主要是定義了一個高層接口。它包含了對各個子系統(tǒng)的引用,客戶端可以通過它訪問各個子系統(tǒng)的功能。現(xiàn)在來分析其基本結構和實現(xiàn)方法。

外觀模式實現(xiàn)

案例: 長虹劍、冰魄劍、紫云劍三劍合璧。
外觀(Facade)角色:三劍合璧
子系統(tǒng)(Sub System)角色:長虹劍、冰魄劍、紫云劍
客戶(Client)角色:測試類,調用三劍合璧

長虹劍

長虹劍類聲明一個調用長虹劍的方法

public class ChangHong {
    public void show(){
        System.out.println("長虹劍");
    }}

冰魄劍

冰魄劍類聲明一個調用冰魄劍的方法

public class BingPo {
    public void show(){
        System.out.println("冰魄劍");
    }}

紫云劍

紫云劍類聲明一個調用紫云劍的方法

public class ZiYun {
    public void show(){
        System.out.println("紫云劍");
    }}

三劍合璧

聲明三個劍對象,并且聲明一個方法調用三劍的方法。

public class San {
    private ChangHong changHong =new ChangHong();
    private BingPo bingPo=new BingPo();
    private ZiYun ziYun=new ZiYun();
    public void shows(){
        changHong.show();
        bingPo.show();
        ziYun.show();
        System.out.println("三劍合璧");
    }}

測試

new一個三劍合璧的對象,調用三劍合璧的方法

public class Demo {
    public static void main(String[] args) {
        San san=new San();
        san.shows();
    }}

關于“JAVA外觀模式怎么實現(xiàn)”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“JAVA外觀模式怎么實現(xiàn)”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI