美文网首页
结构型开发模式-适配器模式

结构型开发模式-适配器模式

作者: HideOnBush | 来源:发表于2016-04-16 15:20 被阅读116次

结构型模式概述

    结构型模式分为 类结构模式 对象结构模式

  类结构模式只关心类的组合,有多个类可以组成一个更大的系统。在类结构模式中一般只存在 继承关系 和 实现关系。

对象结构模式只关心类与对象的组合,通过关联关系是得在一个类中定义另一个类的实例通对象,然后通过该实例变量调用其方法。根据“合成复用原则”, 在系统中尽量使用关联关系来代替继承关系,所以 对象结构模式 用的比较多。

适配器模式

模式动机:

   通常情况下,客户端可以通过目标类的借口访问它所提供的服务。有时候,现有类可以满足用户的需求,但是它所提供的借口不一定是用户所希望的,这可能是现有类的方法名和目标类的方法名不一致。所以这时候就可以使用适配器模式,把现有的接口转化成客户类所期望的借口,这就是适配器模式的模式动机。

模式结构:

Target:目标抽象类

Adapter: 适配器类

Adapted: 适配者类

Client: 客户类

适配器模式实例与解析

  某系统需要提供一个加密模块,将用户信息(如密码等机密信息)加密之后再存储在数据库中,系统已经定义好了数据库操作类。为了提高开发效率,现需要重用已有的加密算法,这些算法封装在一些由第三方提供的类中,有些甚至没有源代码。使用适配器模式设计该加密模块,实现在不修改现有类的基础上重用第三方加密方法。


目标抽象类

public abstract class DataOperation{

        public String password;

        public void setPassword(String password){

              this.password = password;

       }

        public String getPassword {

               return password;

       }

      public abstract String doEncrypt(int key,String ps);

}

数据加密类

public final class Casear{

public String doEncrypt(int key, String password){

        String es = "";

for(int i=0;i='a'&&c<='z')

{

             c+=key%26;

             if(c>'z') c-=26;

             if(c<'a') c+=26;

}

            if(c>='A'&&c<='Z')

{

                 c+=key%26;

                if(c>'Z') c-=26;

                if(c<'A') c+=26;

}

            es+=c; 

}

return es;

}

}

适配器类

public class CipherAdapter extends DataOperation

{

private Caesar cipher;

public CipherAdapter()

{

cipher=new Caesar();

}

public String doEncrypt(int key,String ps)

{

return cipher.doEncrypt(key,ps);

}

}

常见的模式应用

Sun公司在1996年公开了Java语言的数据库连接工具JDBC,JDBC使得Java语言程序能够与数据库连接,并使用SQL语言来查询和操作数据。JDBC给出一个客户端通用的抽象接口,每一个具体数据库引擎(如SQL Server、Oracle、MySQL等)的JDBC驱动软件都是一个介于JDBC接口和数据库引擎接口之间的适配器软件。抽象的JDBC接口和各个数据库引擎API之间都需要相应的适配器软件,这就是为各个不同数据库引擎准备的驱动程序。

相关文章

  • 最常用的设计模式---适配器模式(C++实现)

    适配器模式属于结构型的设计模式,它是结构型设计模式之首(用的最多的结构型设计模式)。 适配器设计模式也并不复杂,适...

  • 结构型模式:适配器模式

    文章首发:结构型模式:适配器模式 七大结构型模式之一:适配器模式。 简介 姓名 :适配器模式 英文名 :Adapt...

  • 设计模式(6) 适配器模式

    结构型模式 适配器模式 类适配器和对象适配器 结构型模式 结构型模式的重点在于如何通过灵活的体系组织不同的对象,并...

  • 设计模式之六——适配器模式

    原文传送门 1 介绍 适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。结构型模式描述如何将类或者对象结...

  • #结构型模式1-适配器模式(Adapter)

    结构型模式1-适配器模式 结构型模式简介 结构型模式,分为类结构型模式和对象结构型模式。 创建型模式主要有7个: ...

  • 结构型模式8-结构型模式总结

    结构型模式8-结构型模式总结 结构型模式总共有7种: 适配器模式(Adapter) 组合模式(Composite)...

  • 【设计模式】结构型设计模式汇总

    结构型设计模式汇总 结构型设计模式名称 结构型设计模式主要包括 7 大类: 代理模式 桥接模式 装饰器模式 适配器...

  • 结构模式

    结构型模式包括:适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模式。其中对象的适配器模式是各种...

  • 适配器模式

    适配器模式Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结...

  • 08.适配器模式(结构型)

    适配器模式(结构型) 一、适配器介绍 1). 相关概念 适配器模式:Adapter Pattern, 别名包装器(...

网友评论

      本文标题:结构型开发模式-适配器模式

      本文链接:https://www.haomeiwen.com/subject/boyglttx.html