外观模式/门面模式

1.两个行为类

 

public class SubA {
    public void say(){
        System.out.println("suba say a ....");
    }
}


public class SubB {
    public void say(){
        System.out.println("subb say b ....");
    }
}


2.外观类

 

 

public class Facade {
    public void say(){
        new SubA().say();
        new SubB().say();
    }
}

 

 

3.程序入口

 

public class M {
    public static void main(String[] args) {
        Facade f = new Facade();
        
        f.say();
    }
}


外观模式,也称呼门面模式。

 

我们在什么场景下需要外观模式呢?

栗子:喝茶。
  个人:在家喝茶,需要 找杯具+拿茶叶+烧热水+泡茶,然后才是喝茶
  在茶馆:找服务员,然后就是喝茶
  我们把找杯具+拿茶叶+...的操作全部封装依靠服务员,这样,很大程度的减少了服务对找杯具+拿茶叶等操作的直接访问,在程序上达到了解耦
  其实我们用这个模式很频繁的,比如,一个controller中,访问的一个方法A,这个A方法,除了查询用户的基本信息(名字+性别),很可能还要查询此用户的上下级等信息,大  部分情况,我们都是只暴露一个对外的接口统一的处理这个逻辑。
 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值