当前位置: 首页 > wzjs >正文

如何把网站做成软件58同城二手房

如何把网站做成软件,58同城二手房,上海搜索排名优化,济宁网站外观设计模式 🚩什么是外观设计模式?🚩外观设计模式的特点🚩外观设计模式的结构🚩外观设计模式的优缺点🚩外观设计模式的Java实现🚩代码总结🚩总结 🚩什么是外观设计模式…

外观设计模式

  • 🚩什么是外观设计模式?
  • 🚩外观设计模式的特点
  • 🚩外观设计模式的结构
  • 🚩外观设计模式的优缺点
  • 🚩外观设计模式的Java实现
  • 🚩代码总结
  • 🚩总结

🚩什么是外观设计模式?

外观设计模式(Facade Pattern) 是一种 结构型设计模式,它提供了一个 统一的接口,用于访问子系统中的一组接口。外观模式通过定义一个 高层接口,简化了客户端与子系统之间的交互,隐藏了子系统的复杂性。

使用场景

  • 当需要为 复杂的子系统 提供一个 简单的接口 时。

  • 当需要 解耦客户端与子系统 时,使子系统更容易维护和扩展。

  • 当需要 分层构建系统 时,外观模式可以作为每层的入口点。

🚩外观设计模式的特点

  • 简化接口:外观模式提供了一个简化的接口,隐藏了子系统的复杂性。

  • 解耦:客户端与子系统之间通过外观接口交互,降低了耦合度。

  • 易用性:客户端无需了解子系统的内部细节,只需调用外观接口即可。

  • 灵活性:子系统可以独立变化,只要外观接口保持不变,客户端代码无需修改。

🚩外观设计模式的结构

外观模式主要包含以下部分:

  • Facade(外观):提供一个统一的接口,客户端通过该接口与子系统交互。

  • SubSystem(子系统):由多个类或模块组成,实现具体的功能。

  • Client(客户端):通过 Facade 接口与子系统交互,无需直接调用子系统的类。

🚩外观设计模式的优缺点

✅ 优点

  • 简化接口:外观模式提供了一个简化的接口,隐藏了子系统的复杂性。

  • 解耦:客户端与子系统之间通过外观接口交互,降低了耦合度。

  • 易用性:客户端无需了解子系统的内部细节,只需调用外观接口即可。

  • 灵活性:子系统可以独立变化,只要外观接口保持不变,客户端代码无需修改。

❌ 缺点

  • 不符合开闭原则:如果子系统需要新增功能,可能需要修改外观接口。

  • 过度依赖:客户端可能过度依赖外观接口,导致外观接口变得臃肿。

🚩外观设计模式的Java实现

代码地址:GitHub

  • 创建 子系统类 SubSystemOne、SubSystemTwo 和 SubSystemThree,分别实现具体的功能。

    • 子系统1SubSystemOne
    /*** @author hanson.huang* @version V1.0* @ClassName SubSystemOne* @Description 子系统1* @date 2025/3/24 17:00**/
    public class SubSystemOne {public void methodOne() {System.out.println("执行子系统一的功能");}
    }
    
    • 子系统2SubSystemTwo
    /*** @author hanson.huang* @version V1.0* @ClassName SubSystemTwo* @Description 子系统2* @date 2025/3/24 17:03**/
    public class SubSystemTwo {public void methodTwo() {System.out.println("执行子系统二的功能");}
    }
    
    • 子系统3SubSystemThree
    /*** @author hanson.huang* @version V1.0* @ClassName SubSystemThree* @Description 子系统3* @date 2025/3/24 17:04**/
    public class SubSystemThree {public void methodThree() {System.out.println("执行子系统三的功能");}
    }
    
  • 创建 外观类 Facade,提供一个统一的接口,封装子系统的调用。

/*** @author hanson.huang* @version V1.0* @ClassName Facade* @Description 外观类* @date 2025/3/24 17:04**/
public class Facade {SubSystemOne subSystemOne;SubSystemTwo subSystemTwo;SubSystemThree subSystemThree;public Facade() {subSystemOne = new SubSystemOne();subSystemTwo = new SubSystemTwo();subSystemThree = new SubSystemThree();}public void methodA() {subSystemOne.methodOne();}public void methodB() {subSystemTwo.methodTwo();}public void methodC() {subSystemThree.methodThree();}
}
  • 测试外观模式
/*** @author hanson.huang* @version V1.0* @ClassName FacadePattern* @Description 测试外观模式* @date 2025/3/24 17:08**/
public class FacadePattern {public static void main(String[] args) {Facade facade = new Facade();facade.methodA();facade.methodB();facade.methodC();}
}

📌 运行结果

在这里插入图片描述

🚩代码总结

  • 子系统类 SubSystemOne、SubSystemTwo 和 SubSystemThree 分别实现具体的功能。

  • 外观类 Facade 提供一个统一的接口,封装子系统的调用。

  • 客户端 通过 外观类 与子系统交互,无需直接调用子系统的类。

🚩总结

  • 外观设计模式(Facade Pattern) 提供了一个 统一的接口,用于访问子系统中的一组接口,简化了客户端与子系统之间的交互。

  • 适用于 为复杂子系统提供简单接口解耦客户端与子系统分层构建系统 的场景。

  • Java 实现 需要 定义子系统类外观类,并通过外观类封装子系统的调用。

✅ 适用场景:

  • 需要为 复杂的子系统 提供一个 简单的接口 时。

  • 需要 解耦客户端与子系统 时。

  • 需要 分层构建系统 时。

  • Java中许多地方用到了外观模式,在Java的GUI编程中,javax.swing 包大量运用了外观模式。例如,创建一个简单的窗口,你可以借助 JFrame 这个外观类,而不用直接去操作底层复杂的窗口创建和管理机制。

创作不易,不妨点赞、收藏、关注支持一下,各位的支持就是我创作的最大动力❤️

在这里插入图片描述


文章转载自:

http://y62ViQti.cLndL.cn
http://HdPPCFaA.cLndL.cn
http://w7eEhiwW.cLndL.cn
http://rkoUA58t.cLndL.cn
http://S5Y363lj.cLndL.cn
http://csmrP900.cLndL.cn
http://prXFXhzx.cLndL.cn
http://2PMDwiVS.cLndL.cn
http://SJbGX3R5.cLndL.cn
http://0wwY5hDH.cLndL.cn
http://JFzwazY9.cLndL.cn
http://nyViJhmv.cLndL.cn
http://Vp9P3IpA.cLndL.cn
http://GqMxS44m.cLndL.cn
http://64lKMsbf.cLndL.cn
http://ClMLPf7b.cLndL.cn
http://p4sceH7X.cLndL.cn
http://qrDd26Qb.cLndL.cn
http://XzrMP5f5.cLndL.cn
http://1RItfdas.cLndL.cn
http://nFj51TPu.cLndL.cn
http://eN7pdUE4.cLndL.cn
http://XU4vZuVi.cLndL.cn
http://rhydLwIT.cLndL.cn
http://4Urpyyiu.cLndL.cn
http://QnR2XuTl.cLndL.cn
http://ChcUoDG2.cLndL.cn
http://ZdmHAcmJ.cLndL.cn
http://k4DPO5YM.cLndL.cn
http://FbTu0qtj.cLndL.cn
http://www.dtcms.com/wzjs/759512.html

相关文章:

  • 毕业设计做网站可以用模版吗徐州百姓网招聘信息网
  • 学做美食网站短视频素材免费
  • 嘉兴网站制作维护家具网站建设规划
  • 做淘客网站需要企业的域名五一自学网免费教程官网
  • 北海网站设计公司企业网站主页设计图
  • 合肥做网站推广的公司广州网络推广有限责任公司
  • 建设一个网站的步骤有哪些广州seo教程
  • 做电影网站挣钱吗wordpress 一直崩溃
  • 网站部署到终端机怎么做网站上线倒计时 模板
  • 做排行的网站广州app设计公司
  • 公司创建网站要多少钱多人一起做视频网站
  • 网站关键词结构有名的外贸公司
  • 天工网官方网站设计师资源网站
  • 农业基本建设项目 网站基金管理公司司网站建设要求
  • 微信建设网站哪家好有没有女的做任务的网站
  • 便宜营销型网站建设优化建站世界比分榜
  • 电商网站建设概念摄影网站开发背景
  • 经营网站备案西湖区建设局网站
  • 怎么做好网站方式推广php网站开发专业介绍
  • 沈阳海外模板建站建设银行怎么加入信用网站
  • 昆明网站建设外包大连关键词快速排名
  • 建网站投放广告赚钱网站让百度收录应该怎么做
  • 企业网站使用不规范地图如何处罚app制作培训班
  • 游戏网站设计论文济宁推广
  • 网站建设行情建筑工程公司注册需要什么条件
  • 维护网站多少钱两耳清风怎么做网站
  • 网站php源码破解版网站开发需求分析模板
  • 效果好的网站制作上海seo整站优化
  • wordpress站点登陆肇庆网站建设方案外包
  • 织梦的网站地图更新宁波网站设计方案