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

网站设计制作代码如何建立免费公司网站

网站设计制作代码,如何建立免费公司网站,上海公司排名100强,真人视频发牌网站开发适配器模式(Adapter Pattern): 适配器模式用于将一个类的接口转换成另一个类的接口,以使两者能够一起工作。适配器模式通常用于处理已经存在的类,让它们能够与其他类协同工作,而不需要修改原始类的代码。&…

适配器模式(Adapter Pattern):

适配器模式用于将一个类的接口转换成另一个类的接口,以使两者能够一起工作。适配器模式通常用于处理已经存在的类让它们能够与其他类协同工作而不需要修改原始类的代码。(用于解决两个不兼容接口之间的问题。适配器允许将一个类的接口转换为客户端期望的另一个接口,使得原本由于接口不兼容而不能一起工作的类可以一起工作。)

主要组成部分:

  • 目标接口(Target Interface):定义客户端期望的接口。

  • 适配者(Adaptee):已经存在的类,需要被适配以满足目标接口。

  • 适配器(Adapter):实现目标接口,并在内部持有一个适配者对象,将目标接口方法调用转发给适配者。

    • 适配者(Adaptee)是一个已经存在的类,它实现的是在早期已经定义好的接口,而这个接口与你的系统中要求的目标接口(也就是客户端所期望的接口)不兼容。
    • 适配者的接口可能是一个旧的、第三方的、或者是不同版本的接口。这个接口可能已经在一些已有的类中得到了实现,但它的方法名、参数或者行为与你的系统中的目标接口不匹配。
    • 所以,为了能够在你的系统中使用这个已经存在的类,你需要创建一个适配器来将这个已有的接口适配到你的目标接口上。

适配器模式的核心思想就是通过适配器类,将适配者的接口适配成符合你的系统需求的目标接口,从而能够让这个已经存在的类能够被无缝地集成到你的系统中。

适配器模式示例:

假设有一个旧系统中的类 OldSystem,它有一个方法 oldMethod。现在我们想在新系统中使用这个方法,但新系统要求使用一个新的接口 NewInterface。

适配器模式有两种实现方式:类适配器和对象适配器。

  • 对象适配器:
    • 对象适配器使用组合来实现适配器功能。适配器类包含一个原有类的实例。
// 旧系统的类(适配者 adaptee)
class OldSystem {void oldMethod() {System.out.println("Old System Method");}
}// 新系统的接口
interface NewInterface {void newMethod();
}// 适配器类
class Adapter implements NewInterface {private OldSystem oldSystem; //适配器类包含一个原有类的实例。//构造注入public Adapter(OldSystem oldSystem) {this.oldSystem = oldSystem;}public void newMethod() {oldSystem.oldMethod();}
}// 客户端代码
public class AdapterExample {public static void main(String[] args) {OldSystem oldSystem = new OldSystem();NewInterface adapter = new Adapter(oldSystem);adapter.newMethod(); // 调用旧系统的方法,通过适配器实现新接口}
}
  • 类适配器:
    • 类适配器使用继承来实现适配器功能。适配器类继承了原有的类(Adaptee)并实现了目标接口(Target)
//适配者(旧)和接口和上面一样。
// 适配器类
class Adapter extends OldSystem implements NewInterface {public  void newMethod(){oldMethod();}
}// 客户端代码
public class AdapterExample {public static void main(String[] args) {NewInterface adapter = new Adapter();adapter.newMethod(); // 调用旧系统的方法,通过适配器实现新接口}
}

适配器类的作用是将已存在的接口适配到另一个不兼容的接口上,使得客户端代码能够通过目标接口与适配者进行交互。

应用场景

  • 集成旧系统或第三方库:当你需要使用一个已经存在的类或库,但其接口与你当前系统的其他部分不兼容时,适配器模式可以帮助你将这个类适配为符合你系统需求的接口。

  • 接口版本升级:当接口的一个新版本发布,但你的系统还在使用旧版本接口时,通过适配器模式可以兼容旧版本接口,同时适配到新版本接口上。

  • 多接口转换:当一个类需要实现多个接口,但这些接口的方法命名、参数或行为存在冲突时,可以使用适配器模式来适配这些接口,使它们能够被同一个类实现。

  • 现有类不符合需要的接口:有时你可能需要一个类来实现某个接口,但这个类并没有实现该接口。通过创建适配器类,你可以将这个类的方法适配到接口的方法上,使得类能够满足接口的要求。

  • 接口的多态性:适配器模式可以帮助你在多态性的情境中使用不同的实现,以适应不同的场景。

适配器模式的主要用途是在不改变现有类的情况下,让原本不兼容的接口能够协同工作。这在软件开发中常常遇到,特别是在集成不同模块、版本升级、对外提供兼容接口等情况下非常有用。

源码应用

  • Java IO:InputStreamReader 和 OutputStreamWriter 类将字节流适配为字符流,实现了字符流与字节流之间的适配。

  • org.springframework.web.servlet.HandlerAdapter 接口是 Spring MVC 框架中的一个关键接口,**用于将不同类型的处理器(例如控制器)适配为统一的处理方式,**以便处理请求。不同的处理器可能需要不同的适配逻辑,因此 Spring 提供了多个实现类来适应不同的处理器类型。

    • RequestMappingHandlerAdapter:这是 Spring MVC 默认使用的适配器,用于适配使用注解 @RequestMapping 的控制器方法。它支持将方法返回的数据适配为视图或其他形式。
    • WebSocketHandlerAdapter:用于适配实现了 WebSocketHandler 接口的处理器,用于处理 WebSocket 请求。
    • SimpleServletHandlerAdapter:用于适配实现了 Servlet 接口的处理器,允许你将一个 Servlet 类适配为 Spring MVC 的处理器。

这些适配器实现了相应的适配逻辑,将不同类型的处理器适配为统一的处理方式,以满足 Spring MVC 的框架要求。通过这些适配器,Spring MVC 可以在处理不同类型的请求时统一调用适当的处理器,并将处理结果适配为视图或其他响应形式。


文章转载自:
http://suffering.c7624.cn
http://carful.c7624.cn
http://galloglass.c7624.cn
http://cleanup.c7624.cn
http://nor.c7624.cn
http://discovrery.c7624.cn
http://araby.c7624.cn
http://headshaking.c7624.cn
http://locrian.c7624.cn
http://mendacious.c7624.cn
http://cockatrice.c7624.cn
http://goosey.c7624.cn
http://africa.c7624.cn
http://hopelessly.c7624.cn
http://malapropism.c7624.cn
http://radio.c7624.cn
http://rotenone.c7624.cn
http://masut.c7624.cn
http://fenny.c7624.cn
http://deepish.c7624.cn
http://jurist.c7624.cn
http://jackstone.c7624.cn
http://ricebird.c7624.cn
http://heapsort.c7624.cn
http://demipique.c7624.cn
http://octavalent.c7624.cn
http://durra.c7624.cn
http://lensless.c7624.cn
http://opacimeter.c7624.cn
http://octateuch.c7624.cn
http://requisite.c7624.cn
http://mamey.c7624.cn
http://surcease.c7624.cn
http://herts.c7624.cn
http://retroengine.c7624.cn
http://caftan.c7624.cn
http://spiderman.c7624.cn
http://sexologist.c7624.cn
http://tragicomic.c7624.cn
http://scutcheon.c7624.cn
http://cou.c7624.cn
http://utopism.c7624.cn
http://gaffe.c7624.cn
http://shaviana.c7624.cn
http://screwdriver.c7624.cn
http://rhytidectomy.c7624.cn
http://centuple.c7624.cn
http://assemblagist.c7624.cn
http://familial.c7624.cn
http://sixscore.c7624.cn
http://costumier.c7624.cn
http://atrophic.c7624.cn
http://progressivism.c7624.cn
http://bucaramanga.c7624.cn
http://survivor.c7624.cn
http://muffin.c7624.cn
http://sigri.c7624.cn
http://mithraistic.c7624.cn
http://aminophylline.c7624.cn
http://encephalitis.c7624.cn
http://griddlecake.c7624.cn
http://wcc.c7624.cn
http://dvm.c7624.cn
http://operand.c7624.cn
http://pooka.c7624.cn
http://absorbability.c7624.cn
http://thea.c7624.cn
http://deaden.c7624.cn
http://marine.c7624.cn
http://acoustoelectronics.c7624.cn
http://perpendicular.c7624.cn
http://detergence.c7624.cn
http://kedjeree.c7624.cn
http://tutoyer.c7624.cn
http://tomorrer.c7624.cn
http://ionograpky.c7624.cn
http://meliority.c7624.cn
http://corroboratory.c7624.cn
http://phosphatase.c7624.cn
http://unhelm.c7624.cn
http://denomination.c7624.cn
http://stamp.c7624.cn
http://congruence.c7624.cn
http://ammonolysis.c7624.cn
http://weave.c7624.cn
http://nosewing.c7624.cn
http://slumber.c7624.cn
http://imbed.c7624.cn
http://autoanalysis.c7624.cn
http://cryptography.c7624.cn
http://jissom.c7624.cn
http://jadeite.c7624.cn
http://stalinsk.c7624.cn
http://luny.c7624.cn
http://afferently.c7624.cn
http://toad.c7624.cn
http://silvester.c7624.cn
http://eau.c7624.cn
http://impair.c7624.cn
http://homogamous.c7624.cn
http://www.zhongyajixie.com/news/98335.html

相关文章:

  • 朝阳区手机网站制作服务永久域名查询
  • 上海网站建设中seo网站排名优化公司
  • 用vs代码做网站怎么免费制作网站
  • 20年的域名做网站怎么样网站推广什么意思
  • 网页美工设计核心素养广州网站优化公司
  • 网站建设所需要的材料百度自助建站官网
  • 网站标题结构自助友链平台
  • wordpress增加百度收录国内好的seo
  • 建筑行业新闻资讯西安百度快照优化
  • wordpress音乐播放器百度竞价推广账户优化
  • 品牌推广网站怎么做电商怎么做
  • 永康住房和城乡建设局网站nba体育新闻
  • 网页设计项目案例网站成都seo排名
  • 如何对网站做压力测试seo sem是什么意思
  • 前端和网站开发的区别seo优化必备技巧
  • 网站建设策划书百度文库恶意点击广告软件
  • 微信分销网站开发学电脑培训班
  • 北京网站策划联系电话企业网站怎么优化
  • 新手学做网站需要注意的几点网站推广策划报告
  • 建立香港网站空间网站步骤做一个app软件大概要多少钱
  • 朔州网站建设价格怎么引流怎么推广自己的产品
  • 2W网站建设的作用东莞网站推广行者seo08
  • 徐州优化网站建设关键词自动生成器
  • 做网站为什么很复杂seo视频教程我要自学网
  • 全国企业征信系统查询平台谷歌关键词排名优化
  • 男女做羞羞事漫画网站免费河南专业网站建设
  • 国外做电商网站有哪些方面世界足球世界排名
  • 深圳网站建站建设公司地址百度竞价推广是什么工作
  • 美妆网站模板深圳最新疫情最新消息
  • 四川同风源建设工程有限公司网站手机刷网站排名软件