妙博客

主机评测 香港服务器 洛杉矶VPS测评

设计模式-JAVA-外观模式(Facade)

外观模式(Facade Pattern)是一种结构型设计模式,它为复杂的子系统提供一个简单的接口,使得客户端可以更方便地使用该子系统。外观模式通过将子系统的复杂性隐藏在一个简单的接口后面,使得客户端可以更加容易地使用该子系统,同时也降低了客户端与子系统之间的耦合度。

下面是一个简单的外观模式的示例代码:

// 子系统A
class SubSystemA {
    public void methodA() {
        System.out.println("SubSystemA methodA");
    }
}
// 子系统B
class SubSystemB {
    public void methodB() {
        System.out.println("SubSystemB methodB");
    }
}
// 子系统C
class SubSystemC {
    public void methodC() {
        System.out.println("SubSystemC methodC");
    }
}
// 外观类
class Facade {
    private SubSystemA subSystemA;
    private SubSystemB subSystemB;
    private SubSystemC subSystemC;
    public Facade() {
        subSystemA = new SubSystemA();
        subSystemB = new SubSystemB();
        subSystemC = new SubSystemC();
    }
    public void method() {
        subSystemA.methodA();
        subSystemB.methodB();
        subSystemC.methodC();
    }
}
// 客户端
public class Client {
    public static void main(String[] args) {
        Facade facade = new Facade();
        facade.method();
    }
}


在上面的代码中,我们定义了三个子系统类 SubSystemA、SubSystemB 和 SubSystemC,它们分别实现了各自的方法。然后我们定义了一个外观类 Facade,它包含了这三个子系统的实例,并提供了一个方法 method,该方法调用了这三个子系统的方法。最后,我们在客户端中创建了一个 Facade 实例,并调用了它的 method 方法。

通过使用外观模式,我们可以将复杂的子系统封装起来,使得客户端可以更加方便地使用它们。同时,外观模式也可以降低客户端与子系统之间的耦合度,使得系统更加灵活和易于维护。



JAVA7大原则和23种设计模式汇总,点我查看

Copyright Your 142132.com Rights Reserved. 赣ICP备17010829号-2