外观模式,这个模式主要是用来解耦的。他主要是降低两个子系统之间的关系。举个例子,我关电脑,开电脑,不需要让cpu开启,让硬盘开启,让显示器开启,关电脑的时候也是同样的。我就知道开和关就可以了。这样,我这个子系统和电脑这个子系统的关系就很简单了。
外观类
public class Facade {
Cpu MyCpu = new Cpu();
Ssd MySsd = new Ssd();
public void start(){
MyCpu.start();
MySsd.start();
}
public void shutdown(){
MyCpu.shutdown();
MySsd.shutdown();
}
}
内部硬件
public class Cpu {
public void start(){
System.out.println("cpu开启");
}
public void shutdown(){
System.out.println("cpu关闭");
}
}
public class Ssd {
public void start(){
System.out.println("ssd开启");
}
public void shutdown(){
System.out.println("ssd关闭");
}
}
客户端
public class Client {
public static void main(String[] args){
Facade Myfacade = new Facade();
Myfacade.start();
Myfacade.shutdown();
}
}