16、门面模式

16、门面模式,第1张

概述文章目录packagecom.example.demo.designpattern;/***门面模式/外观模式;结构型模式;*隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。它向现有的系统添加一个接口,来隐藏系统的复杂性;*门面模式提供一个高层次的接口,使得子系统更易于使用;

文章目录


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、门面模式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1212085.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存