模式说法之——适配器

简介: 在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的。那么如何应对这种“迁移的变化”?如何既能利用现有对象的良好实现,同时又能满足新的应用环境所要求的接口?   将一个类的接口转换成客户希望的另外一个接口。

在软件系统中,由于应用环境的变化,常常需要将一些现存的对象放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的。那么如何应对这种迁移的变化?如何既能利用现有对象的良好实现,同时又能满足新的应用环境所要求的接口?

 

将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。

 

类适配实现

 

对象适配实现

 

现在实现对象适配器

(一)代码

//被适配者

    public class Adaptee

    {

        public void SpecificRequet()

        {

            Console.WriteLine("原有的正常的接口");

        }

    }

 

    //ITarget接口

    public interface ITarget

    {

        void Request();

    }

 

    //这里利用对象适配的方法。

    //适配器

    public class Adapter:ITarget

    {

        private Adaptee _adapte = new Adaptee();

 

        public void Request()

        {

            _adapte.SpecificRequet();

            Console.WriteLine("现有的经过适配的");

        }

    }

(二)测试

[Test]

        public void TestAdapter()

        {

            ITarget tt = new Adapter();

            tt.Request();

        }

 

 

博客园大道至简

http://www.cnblogs.com/jams742003/

转载请注明:博客园

目录
相关文章
|
10月前
|
人工智能 弹性计算 算法
【云故事探索】NO.5:PETKIT 小佩,科技与爱,共绘宠物智能生活新篇章
【云故事探索】NO.5:PETKIT 小佩,科技与爱,共绘宠物智能生活新篇章
243 0
|
监控 关系型数据库 MySQL
MySQL高可用MHA
MySQL高可用管理工具(MHA,Master High Availability)是一个用于自动管理MySQL主从复制的工具,它可以提供高可用性和自动故障转移。MHA由原版的MHA工具和MHA Manager组成,它们协同工作以实现自动主从切换和监控。
859 0
多行输入框
【10月更文挑战第1天】多行输入框。
76 4
|
SQL 存储 关系型数据库
MySQL中 LBCC 和 MVCC 的理解,常见问题及示例:
MySQL中 LBCC 和 MVCC 的理解,常见问题及示例:
755 1
MySQL中 LBCC 和 MVCC 的理解,常见问题及示例:
文件的打开关闭
文件的打开关闭。
148 0
|
Java Linux vr&ar
linux篇-Centos7jdk安装
linux篇-Centos7jdk安装
228 0
linux篇-Centos7jdk安装
彩铅练习,路飞
海贼王是我特别喜欢的一部动漫。 这一张路飞画的实在是不怎么像,练习中。 image.png
921 0
|
2天前
|
云安全 监控 安全