C#设计模式系列适配器模式教程介绍
1. 概述
将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。
2. 解决的问题
即Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。
3. 模式中的角色
3.1 目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。
3.2 需要适配的类(Adaptee):需要适配的类或适配者类。
3.3 适配器(Adapter):通过包装一个需要适配的对象,把原接口转换成目标接口。
4. 模式解读
注:在GoF的设计模式中,对适配器模式讲了两种类型,类适配器模式和对象适配器模式。由于类适配器模式通过多重继承对一个接口与另一个接口进行匹配,而C#、java等语言都不支持多重继承,因而这里只是介绍对象适配器。
4.1 适配器模式的类图
4.2 适配器模式的代码实现
///
public class Target { ///
public virtual void Request() { eLine("This is a common request"); } } ///
public class Adaptee { public void SpecificRequest() { eLine("This is a special request."); } } ///
public class Adapter:Target { // 建立一个私有的Adeptee对象 private Adaptee adaptee = new Adaptee(); ///
public override void Request() { ificRequest(); } }
4.3 客户端代码
class Program { static void Main(string[] args) { // 对客户端来说,调用的就是Target的Request() Target target = new Adapter(); est(); (); } }
运行结果
5. 模式总结
5.1 优点
5.1.1 通过适配器,客户端可以调用同一接口,因而对客户端来说是透明的。这样做更简单、更直接、更紧凑。
5.1.2 复用了现存的类,解决了现存类和复用环境要求不一致的问题。
5.1.3 将目标类和适配者类解耦,通过引入一个适配器类重用现有的适配者类,而无需修改原有代码。
5.1.4 一个对象适配器可以把多个不同的适配者类适配到同一个目标,也就是说,同一个适配器可以把适配者类和它的子类都适配到目标接口。
5.2 缺点
对于对象适配器来说,更换适配器的实现过程比较复杂。
5.3 适用场景
5.3.1 系统需要使用现有的.类,而这些类的接口不符合系统的接口。
5.3.2 想要建立一个可以重用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作。
5.3.3 两个类所做的事情相同或相似,但是具有不同接口的时候。
5.3.4 旧的系统开发的类已经实现了一些功能,但是客户端却只能以另外接口的形式访问,但我们不希望手动更改原有类的时候。
5.3.5 使用第三方组件,组件接口定义和自己定义的不同,不希望修改自己的接口,但是要使用第三方组件接口的功能。
6. 适配器应用举例
6.1 使用过的开发人员应该都用过DataAdapter,它就是用作DataSet和数据源之间的适配器。DataAdapter通过映射Fill和Update来提供这一适配器。
6.2 手机电源适配器
以上就是本文的全部内容,希望能给大家一个参考,也希望大家多多支持。
-
《三亚落日》教学设计
作为一名优秀的教育工作者,常常需要准备教学设计,教学设计是对学业业绩问题的解决措施进行策划的过程。那么教学设计应该怎么写才合适呢?以下是小编为大家收集的《三亚落日》教学设计,仅供参考,欢迎大家阅读。《三亚落日》教学设计1教学目标:1、正确、流利、有感情地...
-
产品包装设计的魅力怎样体现?
试想一下,当你在规划好的时间内去商场购物,面对多达千万种的琳琅产品,如何能够既高效、又准确地选定心仪的一款进行购买呢?每一个细节都经过了仔细的考虑,修改后再在商场的货架上进行测试。对包装设计的修改常常精确到一毫一厘,因为设计者们不仅仅把它们看成是一件...
-
设计作文6篇[经典]
在学习、工作乃至生活中,大家一定都接触过作文吧,作文可分为国小作文、中学作文、大学作文(论文)。你知道作文怎样写才规范吗?以下是小编精心整理的设计作文6篇,仅供参考,大家一起来看看吧。设计作文篇1一、谈话导入,引出模式。1、小朋友们,这是什么?(师在黑板画一个圆)2、...
-
设计节日作文400字锦集【8篇】
在日常的学习、工作、生活中,大家都不可避免地会接触到作文吧,作文是经过人的思想考虑和语言组织,通过文字来表达一个主题意义的记叙方法。一篇什么样的作文才能称之为优秀作文呢?以下是小编为大家收集的设计节日作文400字8篇,欢迎大家借鉴与参考,希望对大家有所帮助...