Java设计模式-----Facade外观模式
2008-06-05 12:12
555 查看
Facade外观模式:
为子系统中的一组接口提供一个统一接口。Facade模式定义了一个更高层的接口,使子系统更加容易使用。
例子:
1.DrawerOne.java
publicclassDrawerOne{
publicvoidopen(){
System.out.println("第一个抽屉被打开了");
getKey();
}
publicvoidgetKey(){
System.out.println("得到第二个抽屉的钥匙");
}
}
2.DrawerTwo.java
为子系统中的一组接口提供一个统一接口。Facade模式定义了一个更高层的接口,使子系统更加容易使用。
例子:
1.DrawerOne.java
publicclassDrawerOne{
publicvoidopen(){
System.out.println("第一个抽屉被打开了");
getKey();
}
publicvoidgetKey(){
System.out.println("得到第二个抽屉的钥匙");
}
}
2.DrawerTwo.java
publicclassDrawerTwo{
publicvoidopen(){
System.out.println("第二个抽屉被打开了");
getFile();
}
publicvoidgetFile(){
System.out.println("得到这个重要文件");
}
}
则通常为了拿到“重要文件”需要如下代码实现:
publicclassClient{
publicstaticvoidmain(String[]args){
DrawerOnedarwerOne=newDrawerOne();
DrawerTwodarwerTwo=newDrawerTwo();
darwerOne.open();
darwerTwo.open();
}
}
但是如果使用Facade外观模式,可新建一个Facade类:
publicclassDrawerFacade{
DrawerOnedarwerOne=newDrawerOne();
DrawerTwodarwerTwo=newDrawerTwo();
publicvoidopen(){
darwerOne.open();
darwerTwo.open();
}
}
则此时调用的代码修改为:
publicclassClient{
publicstaticvoidmain(String[]args){
DrawerFacadedrawer=newDrawerFacade();
drawer.open();
}
}
参考自:http://www.blogjava.net/flustar/archive/2007/11/23/facade.html
相关文章推荐
- java设计模式之九外观模式(Facade)
- JAVA设计模式十九--Facade(外观模式)
- java23中设计模式——结构模式——Facade(外观 )
- Java设计模式(五)Facade(外观),Composite(组合),Decorator(油漆工)
- JAVA设计模式之外观模式(Facade)
- Java设计模式之从"我想请个秘书!"分析外观(Facade)模式
- Java设计模式十七:外观模式(Facade)
- Java设计模式:外观模式(Facade Pattern)与最少知识原则
- java设计模式之外观模式Facade
- java设计模式之外观模式(Facade)
- Java设计模式之外观模式(Facade)
- 【JAVA设计模式】外观模式(Facade Pattern)
- java设计模式---外观模式(facade pattern)
- 设计模式学习笔记---外观模式Facade pattern(Java版)
- 设计模式(十)----- 外观模式(Facade)----(JAVA版)
- JAVA设计模式(9) —<结构型>外观模式(Facade)
- Java设计模式之结构型模式-外观模式(Facade)
- Java设计模式(11)外观模式(Facade模式)
- Java设计模式--外观模式(Facade)
- (9)Java设计模式-外观模式(Facade)