码迷,mamicode.com
首页 > 其他好文 > 详细

无废话设计模式(10)结构型模式--外观模式

时间:2020-08-03 14:54:09      阅读:76      评论:0      收藏:0      [点我收藏+]

标签:span   mic   img   inf   汇报   out   测试   div   image   

0-前言

  外观模式定义:为子系统中的一组接口提供一个一致的界面,此模式定了一个高层接口

           这一接口使得这一子系统更加容易使用;

1-实现

1-1、简单UML图:

技术图片

 

 

1-2、代码实现

//1、子系统A(研发部)
class DeptDev
{
    public void DoworkD()
    {
        System.out.println("猿类们开始码代码了!");
    }
    public void DoreportD()
    {
        System.out.println("研发部报告:研发任务到了XXX阶段了!");
    }

}
//2、子系统B(测试部)
class DeptTest
{
    public void DoworkT()
    {
        System.out.println("测试人员开始干活了!");
    }
    public void  DoreportT()
    {
        System.out.println("测试部报告:测试完成XXX部分!");
    }
}
//3、外观类(研发总监)
class  DeptFacade
{
    DeptDev deptDev;
    DeptTest deptTest;

    public DeptFacade()
    {
        deptDev = new DeptDev();
        deptTest = new DeptTest();
    }

    public void MakeDowork()
    {
        System.out.println("总监发话了:大家开始干活:------------");
        deptDev.DoworkD();
        deptTest.DoworkT();
    }

    public void GetReport()
    {
        System.out.println("总监发话了:大家汇报工作情况:------------");
        deptTest.DoreportT();
        deptDev.DoreportD();
    }
}

 

客户端:

        DeptFacade deptFacade =new DeptFacade();
        deptFacade.MakeDowork();
        deptFacade.GetReport();

 

运行结果:

技术图片

 

 

2-应用场景简单总结

1、当需要为一个复杂的子系统提供一个简单的接口时;

2、当客户端与抽象类的实现部分之间存在着很大的依赖性时;

3、当需要构建一个层次结构的子系统时;

无废话设计模式(10)结构型模式--外观模式

标签:span   mic   img   inf   汇报   out   测试   div   image   

原文地址:https://www.cnblogs.com/yanghj/p/13426123.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!