外观模式(Facade),为子系统中的一组接口提供一个一致的界面,定义一个高层接口,这个接口使得这一子系统更加容易使用。
package 外观模式;
class Pay{
public String pay(){
String food ="food";
System.out.println("u hava payed,this is your food");
return food;
}
}
class Cook{
public String co(String food){
System.out.println("cooker is cooking");
return food;
}
}
class Waiter{
public void wa(String food){
System.out.println(food+" is done");
}
}
class Facade{
Pay p;
Cook c;
Waiter w;
public Facade(){
p=new Pay();
c=new Cook();
w=new Waiter();
}
public void ser(){
String f=p.pay();
f=c.co(f);
w.wa(f);
}
}
public class Test1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//不使用外观模式
Pay p=new Pay();
Cook c=new Cook();
Waiter w=new Waiter();
String f=p.pay();
f=c.co(f);
w.wa(f);
//使用外观模式
Facade fa=new Facade();
fa.ser();
}
}