外观模式(Facade)

外观模式的定义是,为子系统中的一组接口提供一个一致的interface接口界面。

 

外观模式是个很简单,但很重要的模式,它主要思想是将表现层和逻辑层隔离,封装底层的复杂处理,只为用户提供简单的接口,这样的例子随处可见。外观模式也叫门面模式,它很多时候更是一种系统架构的设计,在我所做的项目中,就实现了门面模式的接口,为复杂系统的解耦提供了最好的解决方案。在WEB开发中的MVC分层架构就是典型的一个外观模式,每一层将操作的具体内容隐藏起来,保留一个接口供上层调用。

 

我们还是通过一个例子来加深理解。

 

新建赛车类:
public class Car {
    public void start() {
        System.out.println("车子已启动");
    }
    public void check_stop() {
        System.out.println("刹车检查");
    }
    public void check_box() {
        System.out.println("检查油箱");
    }
    public void check_console() {
        System.out.println("检查仪表盘是否异常");
    }
}

 

新建赛车操作的外观类:
public class Car_facade_imple {

    public void car_go_go(Car car_ref) {
        car_ref.check_box();
        car_ref.check_console();
        car_ref.check_stop();
        car_ref.start();
    }
}

 

这样,我们的客户端就可以通过调用这些赛车操作的外观类了:

public class Run_main {
    public static void main(String[] args) {
        Car_facade_imple car_facade_imple_ref = new Car_facade_imple();
        car_facade_imple_ref.car_go_go(new car());
    }
}

 

程序运行结果如下:
检查油箱
检查仪表盘是否异常
刹车检查
车子已启动

 

很简单吧,将子操作用一个外观接口封装起来,然后调用这个接口就是调用那些非常复杂的微操作了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值