package com.example.demo.designpattern;/** * 门面模式/外观模式;结构型模式; * 隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。它向现有的系统添加一个接口,来隐藏系统的复杂性; * 门面模式提供一个高层次的接口, 使得子系统更易于使用; * 应用:Tomcat-RequestFacade;slf4j;jdbc;socket * 角色: * - facade 门面角色:客户端可以调用这个角色的方法。 此角色知晓子系统的所有功能和责任。 * - sub_system 子系统角色:子系统并不知道门面的存在。 对于子系统而言, 门面仅仅是另外一个客户端而已。 */public class Facade { private SubSystemA subSystemA; private SubSystemB subSystemB; public Facade(SubSystemA subSystemA, SubSystemB subSystemB) { this.subSystemA = subSystemA; this.subSystemB = subSystemB; } public Facade() { this.subSystemA = new SubSystemA(); this.subSystemB = new SubSystemB(); } public voID aWork() { this.subSystemA.doWork(); } public voID bWork() { this.subSystemB.doWork(); }}class SubSystemA { public voID doWork() { System.out.println("work"); this.go(); } private voID go() { System.out.println("go go"); }}class SubSystemB { public voID doWork() { System.out.println("sleep"); this.go(); } private voID go() { System.out.println("back back"); }}class ClIEntFacade{ public static voID main(String[] args) { Facade facade = new Facade(); facade.aWork(); facade.bWork(); }}
总结 以上是内存溢出为你收集整理的16、门面模式全部内容,希望文章能够帮你解决16、门面模式所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)