package com.leitao.demo.design;
/**
* 外观模式
* @Description: TODO
* @Author LeiTao
* @Date 2023/5/2
* @Version V1.0
**/
public class FacadePattern {
public static void main(String[] args) {
Facade facade = new Facade();
facade.MethodA();
facade.MethodB();
facade.MethodC();
}
}
class Facade{
SubSystemA subSystemA;
SubSystemB subSystemB;
SubSystemC subSystemC;
public Facade() {
subSystemA = new SubSystemA();
subSystemB = new SubSystemB();
subSystemC = new SubSystemC();
}
public void MethodA(){
subSystemA.MethodA();
}
public void MethodB(){
subSystemB.MethodB();
}
public void MethodC(){
subSystemC.MethodC();
}
}
class SubSystemA{
public void MethodA(){
System.out.println("执行了子系统一的功能");
}
}
class SubSystemB{
public void MethodB(){
System.out.println("执行了子系统一的功能");
}
}
class SubSystemC{
public void MethodC(){
System.out.println("执行了子系统一的功能");
}
}