定义:为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
代码:
package facede_model;
/**
* @author naivor
* 外观模式-场景类
*/
public class FacedeModel {
public static void main(String[] args) {
Facede facede=new Facede();
facede.methordA(); //可以不知道四个子系统的存在
// facede.methordB();
}
}
/**
*
* @author naivor
* 外观模式-外观类
*/
class Facede{
private SubSysOne sysOne;
private SubSysTwo sysTwo;
private SubSysThree sysThree;
private SubSysFour sysFour;
public Facede() {
sysOne=new SubSysOne();
sysTwo=new SubSysTwo();
sysThree=new SubSysThree();
sysFour=new SubSysFour();
}
public void methordA(){ //对要执行的方法进行分组
sysOne.methordOne(); //A组
sysTwo.methordTwo();
sysThree.methordThree();
}
public void methordB(){ //B组
sysOne.methordOne();
sysThree.methordThree();
sysFour.methordFour();
}
}
/**
*
* @author naivor
* 外观模式-子系统一
*/
class SubSysOne{
public void methordOne(){
//SubSysOne的业务逻辑
}
}
/**
*
* @author naivor
* 外观模式-子系统二
*/
class SubSysTwo{
public void methordTwo(){
//SubSysTwo的业务逻辑
}
}
/**
*
* @author naivor
* 外观模式-子系统三
*/
class SubSysThree{
public void methordThree(){
//SubSysThree的业务逻辑
}
}
/**
*
* @author naivor
* 外观模式-子系统四
*/
class SubSysFour{
public void methordFour(){
//SubSysFour的业务逻辑
}
}