場景:
一、假設咱們如今有兩個子系統:子系統一、子系統2。
二、子系統1,有多個內部模塊,模塊A、模塊B和模塊C。
三、子系統2,如今有一個功能,須要同時依賴3個模塊來實現一個功能設計模式
咱們在一個類中調用,mian方法至關於子系統2,其中類:ModuleA、ModuleB、ModuleC。spa
public class NonPattern { public static void main(String[] args) { //main表明子系統2,要基於子系統1的3個模塊的功能實現一個業務邏輯 ModuleA moduleA = new ModuleA(); ModuleB moduleB = new ModuleB(); ModuleC moduleC = new ModuleC(); moduleA.excute(); moduleB.excute(); moduleC.excute(); } public static class ModuleA{ public void excute(){ System.out.println("子系統1的模塊A功能"); } } public static class ModuleB{ public void excute(){ System.out.println("子系統1的模塊B功能"); } } public static class ModuleC{ public void excute(){ System.out.println("子系統1的模塊C功能"); } } }
public class FacadePattern2 { public static void main(String[] args) { SystemFacade facade = new SystemFacade(); facade.excute(); } public static class SystemFacade{ public void excute(){ ModuleA moduleA = new ModuleA(); ModuleB moduleB = new ModuleB(); ModuleC moduleC = new ModuleC(); moduleA.excuete(); moduleB.excuete(); moduleC.excuete(); } } public static class ModuleA{ public void excuete(){ System.out.println("子系統1的A模塊功能"); } } public static class ModuleB{ public void excuete(){ System.out.println("子系統1的B模塊功能"); } } public static class ModuleC{ public void excuete(){ System.out.println("子系統1的C模塊功能"); } } }