无废话设计模式(10)--结构型模式:外观模式
Posted 码到成攻
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无废话设计模式(10)--结构型模式:外观模式相关的知识,希望对你有一定的参考价值。
前言
外观模式定义:为子系统中的一组接口提供一个一致的界面,此模式定了一个高层接口,这一接口使得这一子系统更加容易使用;
实现
简单UML图:
代码实现
//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();
运行结果:
应用场景简单总结
1、当需要为一个复杂的子系统提供一个简单的接口时;
2、当客户端与抽象类的实现部分之间存在着很大的依赖性时;
3、当需要构建一个层次结构的子系统时;
-END-
整理知识不易,如果你觉得读完以后有收获,不妨分享给你的亲朋好友吧!
以上是关于无废话设计模式(10)--结构型模式:外观模式的主要内容,如果未能解决你的问题,请参考以下文章
JAVA SCRIPT设计模式--结构型--设计模式之FACADE外观模式(10)
JAVA SCRIPT设计模式--结构型--设计模式之FACADE外观模式(10)