外观模式/门面模式

来源:互联网 发布:香港第一美女是谁知乎 编辑:程序博客网 时间:2024/05/17 04:11

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方法,除了查询用户的基本信息(名字+性别),很可能还要查询此用户的上下级等信息,大  部分情况,我们都是只暴露一个对外的接口统一的处理这个逻辑。







0 0
原创粉丝点击