门面设计模式(facade)

门面设计模式(facade)

这个贼鸡儿简单,快看两眼,这是我介绍的最后两个设计模式了!坚持,成功一定是属于你的!
这个设计模式叫个啥?门面设计模式??这又是什么玩意(消音ing),好了好了我举个例子你就知道了:这里咱们来到了一家奢侈品专柜,里面都是价值连城的宝贝,这么好的宝贝肯定不能让贼盯上啊,怎么办呢?懂了!来个安防系统吧!先不管三七二十一丁玲桄榔安装上摄像头,安装上报警器,安装上传感器:

public class Camera {
    public void on(){
        System.out.println("摄像机已经启动!");
    }
    public void off(){}
}
public class Alarm {
    public void active(){
        System.out.println("报警系统已经启动!");
    }
}
public class Sensor {
    public  void active(){
        System.out.println("传感器已经启动!");
    }
}

这里大家可以自由发挥,我只写了开启的方法,关闭的方法我就没写,不过只开不关是有点奇葩啊哈哈哈哈

我现在是这样想的,我总不能一个个开吧,太麻烦了吧,我需要一个按钮,一键启动,这样多方便了,于是说干就干,想个方法整合一下,哎呦喂!这不就是门面设计模式嘛!看看我怎么写的:

public class SecurityFacade {
    private Alarm alarm;
    private Sensor sensor;
    private Camera camera;
    public SecurityFacade(){
        alarm = new Alarm();
        sensor = new Sensor();
        camera = new Camera();
    }

    public void init(){  //总调度
        alarm.active();
        sensor.active();
        camera.on();
    }
}

是不是以为我要全写到主函数里哈哈哈哈哈哈,好了不逗你了,看看这个门面设计模式,首先映入眼帘的就是构造函数的实例化过程,当你实例化成功之后,其中包含的摄像头,传感器,报警器也就同时开始了他们的生命周期。然后写一个方法init,作为一个总调度方法,开启整个系统。

这样你可以想到,在主函数里面,就可以直接调用这个方法就可以了。很简洁很奈斯。所以让我们看一眼主函数是个什么样:

public class Client {
    public static void main(String[] args) {
        SecurityFacade facade = new SecurityFacade();
        facade.init();
    }
}

不错吧?这就是门面设计模式!讲完啦!快不快!还有最后一个!冲鸭!!!!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值