Java之外觀模式(Facade Pattern)

1.概念

爲子系統中的一組接口提供一個統一接口。Facade模式定義了一個高層接口,這個接口使得這子系統更容易使用。

2.UML

3.代碼

下面是一個具體案例的代碼:

複製代碼
package facade;  
class DrawerOne {  
    public void open(){  
       System.out.println("第一個抽屜被打開了");  
       getKey();  
    }  
    public void getKey(){  
       System.out.println("得到第二個抽屜的鑰匙");  
    }  
}  
class DrawerTwo{  
    public void open(){  
       System.out.println("第二個抽屜被打開了");  
       getFile();  
    }  
    public void getFile(){  
       System.out.println("得到這個重要文件");  
    }  
}  
class DrawerFacade{  
    DrawerOne darwerOne=new DrawerOne();  
    DrawerTwo darwerTwo=new DrawerTwo();  
    public void open(){  
       darwerOne.open();  
       darwerTwo.open();  
    }  
}  
public class DrawerClient{  
    public static void main(String []args){  
       DrawerFacade drawer=new DrawerFacade();  
       drawer.open();  
    }  
}  
複製代碼

4.應用場景

1)爲一個複雜子系統提供一個簡單接口。

2)提高子系統的獨立性。

3)在層次化結構中,可以使用Facade模式定義系統中每一層的入口。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章