首页 > 代码库 > 结构型模式—适配器模式
结构型模式—适配器模式
定义:
将一个类(Adaptee)的接口转换成客户(Client)希望的另外一个接口(Target)。
- 目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。
- 需要适配的类(Adaptee):需要适配的类或适配者类。
- 适配器(Adapter):使得一个东西适合另一个东西的东西。百度中定义为:接口转换器。通过包装一个需要适配的对象,把源接口转换成目标接口。
为什么要适配:需要的东西已做好,但是不能用,短时间又不能改造,想办法适配它。
作用:
使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。(姚明说汉语,其他队员和教练说英语,他们不能沟通交流,团队就不能很好地合作。有了翻译,团队协作成为可能。)
应用:
复用一些现存的类,但是接口又与复用环境要求不一致。分类:
类适配器模式/对象适配器模式实现方式:
class Adapter:Target { //内部包装一个Adaptee对象,表面调用Target的方法Request,实际调用Adaptee的方法SpecificRequest。 private Adaptee adaptee = new Adaptee(); public override void Request() { adaptee .SpecificRequest (); } }
class Program { static void Main(string[] args) { //外界看到的是统一的接口,Request() Target target = new Adapter(); target.Request(); Target target2=new Target(); target2.Request(); } }
使用条件:
两个类都不太容易修改的时候。某系统使用第三方开发组件,这个组件的接口与系统的接口不相同。
优点:
- 调用统一接口
- 复用
类图:
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。