首页 > 代码库 > 设计模式之门面模式(facade)
设计模式之门面模式(facade)
1、定义
门面模式(Facade Pattern)也叫做外观模式,是一种比较常用的封装模式。要求一个子系统的外部与其内部的通讯必须通过一个统一的对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。
2、通用类图
Facade门面角色:客户端可以调用这个角色的方法。此角色知晓子系统的所有功能和责任。一般情况下,本角色会将所有从客户端发来的请求委派到相应的子系统中去,也就是说该角色没有实际的业务逻辑,只是一个委托类。
subsystem子系统角色:可以同时有一个或多个子系统。每个子系统都不是一个单独的类,而是一个类的集合。子系统并不知道门面的存在。对于子系统而言,门面仅仅是另一个客户端而已。
3、代码清单
package Facade;/** *子系统A * 2014-8-13下午3:07:10-limiracle */public class ClassA { public void methodA(){ }}package Facade;/** *子系统B * 2014-8-13下午3:07:10-limiracle */public class ClassB {public void methodB(){ }}package Facade;public class Facade { //被委托的对象 private ClassA classA=new ClassA(); private ClassB classB=new ClassB(); //提供给外部访问的方法 public void methodA(){ classA.methodA(); } public void methodB(){ classB.methodB(); }}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。