java设计模式之外观模式

外观模式相对来说是一种比较常见同时也是比较简单的一种设计模式,我们的日常的开发中有时在不有自主中就会用到外观模式,我们接下来用我们平时去饭店吃饭这个场景来说明外观模式。如果没有饭店,我们吃饭需要自己买菜,有一个自己的厨房,然后做饭。但是正是因为有了饭店的存在,我们不需要和上面的三个对象打交道,我们只要直接和饭店打交道就可以代替我们完成上述的动作,达到吃饭的目的,下面用简单的代码来实现外观模式:

package com.zzit.facade;

/**
 * 外观模式:用一个人去饭店吃饭的动作来模拟外观模式
 * Facade类相当于一个饭店
 * @author yufu
 *
 */
public class Facade {
    public void eat() {
        Food food = new Food();
        food.prepare();
        Chicken ch = new Chicken();
        ch.save();
        Cook cook = new Cook();
        cook.make();
    }
}

class Food {
    public void prepare() {
        System.out.println("准备食材");
    }
}

class Chicken {
    public void save() {
        System.out.println("厨房储存食材");
    }
}

class Cook {
    public void make() {
        System.out.println("厨师做饭");
    }
}

测试外观模式,当我们需要吃饭时(中间的过程全部由饭店来代替我们完成):

package com.zzit.facade;

public class FacadeTest {

    public static void main(String[] args) {
        Facade facade=new Facade();
        facade.eat();
    }

}

输出结果:

准备食材
厨房储存食材
厨师做饭
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值