zoukankan      html  css  js  c++  java
  • Java之外观模式(Facade Pattern)

    1.概念

    为子系统中的一组接口提供一个统一接口。Facade模式定义了一个高层接口,这个接口使得这子系统更容易使用。

    2.UML

    3.代码

    下面是一个具体案例的代码:

    package facade;  
    class DrawerOne {
    public void open(){
    System.out.println("第一个抽屉被打开了");
    getKey();
    }
    public void getKey(){
    System.out.println("得到第二个抽屉的钥匙");
    }
    }
    class DrawerTwo{
    public void open(){
    System.out.println("第二个抽屉被打开了");
    getFile();
    }
    public void getFile(){
    System.out.println("得到这个重要文件");
    }
    }
    class DrawerFacade{
    DrawerOne darwerOne=new DrawerOne();
    DrawerTwo darwerTwo=new DrawerTwo();
    public void open(){
    darwerOne.open();
    darwerTwo.open();
    }
    }
    public class DrawerClient{
    public static void main(String []args){
    DrawerFacade drawer=new DrawerFacade();
    drawer.open();
    }
    }

    4.应用场景

    1)为一个复杂子系统提供一个简单接口。

    2)提高子系统的独立性。

    3)在层次化结构中,可以使用Facade模式定义系统中每一层的入口。

     --------------------------------------------------------------------

    PS: 欢迎关注公众号"Devin说",会不定期更新Java相关技术知识。

    --------------------------------------------------------------------

  • 相关阅读:
    Python 学习
    Linux学习
    java 学习
    jvm学习
    [转]根据时间(NSDate)获取具体的信息:月份、星期、天等
    详解http和https的区别
    一些题
    NSNotification的用法 (转自CSDN:ReyZhang的博客)
    关于File's Owner
    UI设计
  • 原文地址:https://www.cnblogs.com/devinzhang/p/2315200.html
Copyright © 2011-2022 走看看