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

网站开发swf素材dedecms做网站和thinkphp

网站开发swf素材,dedecms做网站和thinkphp,西安做网站多少钱,广西住房城乡建设厅官方网站小谈设计模式#xff08;18#xff09;—适配器模式 专栏介绍专栏地址专栏介绍 适配器模式角色分析目标接口#xff08;Target#xff09;源接口#xff08;Adaptee#xff09;适配器#xff08;Adapter#xff09; 核心思想应用场景Java程序实现输出结果程序分析123 优… 小谈设计模式18—适配器模式 专栏介绍专栏地址专栏介绍 适配器模式角色分析目标接口Target源接口Adaptee适配器Adapter 核心思想应用场景Java程序实现输出结果程序分析123 优缺点分析优点123 缺点12 总结 专栏介绍 专栏地址 link 专栏介绍 主要对目前市面上常见的23种设计模式进行逐一分析和总结希望有兴趣的小伙伴们可以看一下会持续更新的。希望各位可以监督我我们一起学习进步加油各位。 适配器模式 适配器模式是一种结构型设计模式它允许将一个类的接口转换成客户端所期望的另一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的类可以一起工作。 角色分析 目标接口Target 客户端期望的接口适配器将原始接口转换成目标接口。 源接口Adaptee 需要被适配的类或接口。 适配器Adapter 实现目标接口同时持有源接口的实例将目标接口的方法调用转发给源接口的实例。 核心思想 通过适配器将目标接口的方法调用转发给源接口的实例。这样一来客户端就可以通过目标接口来使用源接口的功能。 应用场景 当需要使用一个已经存在的类但其接口不符合需求时可以使用适配器模式。例如使用第三方库提供的接口但需要将其转换成自己系统中的接口。 当需要复用一些已经存在的类但是接口与系统的其他部分不兼容时可以使用适配器模式。例如将不同数据库的操作接口统一成一个接口。 Java程序实现 // 目标接口 interface Target {void request(); }// 源接口 class Adaptee {void specificRequest() {System.out.println(Adaptee: specificRequest);} }// 适配器 class Adapter implements Target {private Adaptee adaptee;Adapter(Adaptee adaptee) {this.adaptee adaptee;}Overridepublic void request() {adaptee.specificRequest();} }// 客户端代码 public class Client {public static void main(String[] args) {Adaptee adaptee new Adaptee();Target target new Adapter(adaptee);target.request();} }输出结果 Adaptee: specificRequest这说明适配器模式成功地将不兼容的接口转换成了兼容的接口使得客户端可以使用目标接口来调用源接口的功能。 程序分析 1 在上面的示例中我们有一个目标接口Target其中定义了客户端所期望的方法request。我们还有一个源接口Adaptee其中有一个不兼容的方法specificRequest。 2 为了使得客户端可以使用Target接口来调用specificRequest方法我们创建了一个适配器Adapter实现了Target接口并持有一个Adaptee的实例。在适配器的request方法中我们将Target接口的方法调用转发给Adaptee的specificRequest方法。 3 在客户端代码中我们创建了一个Adaptee实例和一个适配器Adapter实例并将Adaptee实例传递给适配器的构造函数。然后我们使用Target接口来调用request方法实际上是调用了Adaptee的specificRequest方法。 优缺点分析 优点 1 适配器模式可以让不兼容的接口协同工作。 2 适配器模式可以复用已有的类而无需修改其源代码。 3 适配器模式可以将不同接口的类组合在一起工作。 缺点 1 适配器模式增加了系统的复杂性因为需要增加一个适配器类。 2 适配器模式可能会降低系统的性能因为需要进行额外的转换操作。 总结 适配器模式可以将不兼容的接口转换成兼容的接口使得原本无法一起工作的类可以协同工作。它是一种非常常用的设计模式可以提高系统的灵活性和可扩展性。
http://www.tj-hxxt.cn/news/220261.html

相关文章:

  • 做网站首页看不到图片威海优化推广
  • 为什么做免费视频网站水头哪里有做网站的
  • 公司网站怎么弄安徽专业网站建设检修
  • 中文域名.网站做商城网站都需要什么
  • 深圳品牌网站建设公司哪家好html网站后台模板
  • 肇庆网站建设黄埔商城网站建设
  • py网站开发视频教程做电影网站
  • 淄博做网站的公司有哪些公司官方网站建设需要多少钱
  • 招投标中网站建设评分标准免费的短视频推荐app
  • 手机网站页面模板如何给网站添加网站地图
  • 想做一个网站怎么做网站域名注册的相关证书证明文件
  • 常州金坛建设局网站教育网站制作下载
  • 网站集约化建设 技术济宁网站建设公司
  • 做网站合肥哪家公司好导师微信赚钱只投资10元
  • 百度网站建设哪家公司好做公司网站员工保险
  • 深圳公司网站建设设计企业建站的目的是什么
  • 官方网站建设意义网站建设竞标书
  • 怎么免费创建一个网站软件开发模型及特点
  • 云南省工程建设造价协会网站网站上传格式
  • 网站建设的一些背景图片ps做网站首页怎么
  • 怎么搭建网站视频教程网页设计公司兴田德润在那里
  • 东莞做营销型网站的游戏网站的设计方案
  • wordpress建站准备大学城网站开发公司电话
  • 个人网页设计说明书2000字惠州seo代理
  • 手机网站开发 c做啥类型网站
  • 网站建站建设联系电话响应式网站实例
  • 网站界面友好西安网约车公司排行榜
  • 免费开源的建站系统不收费的网站
  • 北京商会网站建设建设网站小常识
  • 小说网站排名人气wordpress自定义侧边栏