由于代码是直接在word中写的,所以,当做伪代码看吧,肯定直接运行起来有问题。
Facade(外观模式):为子系统中的一组接口提供一个一致的界面, F a c a d e模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
这个相当于一系列功能的封装吧,封装包括步骤的特定顺序和步骤之间的关系。
比如做饭的步骤吧,先买米,然后淘米,然后装锅,然后开煮。
可以这么封装,将这里的买米,淘米,装锅,开煮这四个步骤封装进一个类里面,这就是门面模式(外观模式)。
public interfaceMakeRiceProcess{
publicvoid buyRice();
publicvoid washRice();
publicvoid putIntoPot();
publicvoid cookRice();
}
public class MakeRiceProcessImpl implements MakeRiceProcess{
publicvoid buyRice(){
System.out.println("米买来了");
};
publicvoid washRice(){
System.out.println("淘米");
};
publicvoid putIntoPot(){
System.out.println("装锅");
};
publicvoid cookRice(){
System.out.println("开煮");
};
}
publicclass CookRobot{
private MakeRiceProcess riceProcess =new MakeRiceProcess ();
publicvoid makeRice(){
riceProcess.buyRice();
riceProcess.washRice();
riceProcess.putIntoPot();
riceProcess.cookRice();
}
}
在使用的时候只需要
CookRobot cr = new CookRobot();
cr.makeRice();
至于makeRice()中怎么操作的,不需要知道。
这个类就相当于门面,只需要将一个指令发给他,至于怎么处理指令不是需要知道的。