`
nannan408
  • 浏览: 1757418 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Java设计模式之Adaptor适配器(引用)

阅读更多
字号:大 中 小
Java设计模式之Adaptor适配器。

定义:将两个不兼容的类纠合在一起使用,属于结构型模式,需要有Adaptee(被适配者)和Adaptor(适配器)两个身份.

public interface IRoundPeg{
  public void insertIntoHole(String msg);

}

public interface ISquarePeg{
  public void insert(String str);

}

下面是新的RoundPeg 和SquarePeg, 除了实现接口这一区别,和上面的没什么区别。
public class SquarePeg implements ISquarePeg{
  public void insert(String str){
    System.out.println("SquarePeg insert():"+str);
  }

}

public class RoundPeg implements IRoundPeg{
  public void insertIntohole(String msg){
    System.out.println("RoundPeg insertIntoHole():"+msg);
  }
}

下面是新的PegAdapter,叫做two-way adapter:

public class PegAdapter implements IRoundPeg,ISquarePeg{

  private RoundPeg roundPeg;
  private SquarePeg squarePeg;

  // 构造方法
  public PegAdapter(RoundPeg peg){this.roundPeg=peg;}
  // 构造方法
  public PegAdapter(SquarePeg peg)(this.squarePeg=peg;)

  public void insert(String str){ roundPeg.insertIntoHole(str);}

}

还有一种叫Pluggable Adapters,可以动态的获取几个adapters中一个。


分享到:
评论

相关推荐

    适配器adaptor

    Java适配器的几个小例子,对初学者有帮助

    适配器设计模式入门之一

    1.概念:将两个不兼容的类纠合在一起使用,属于结构型模式,需要有Adaptee(被适配者)和Adaptor(适配器)两个身份. 2.为何使用:我们经常碰到要将两个没有关系的类组合在一起使用,第一解决方案是:修改各自类的接口,...

    23种java版设计模式源码案例.zip

    23种java版设计模式源码案例.zip 0.目录 创建型模式(creational) 简单工厂(simplefactory) 动态工厂(dynamic) 抽象工厂(abstract) 单例模式(singleton) 建造者模式(builder) 原型模式(prototype) 结构型模式...

    adaptor设计模式

    iOS设计模式之适配器模式,简单的demo 去分析对应的设计

    http-jca-adaptor:HTTP Java 连接器架构 1.6 适配器

    #HTTP 资源适配器 此 HTTP 资源适配器是的实现,使用作为底层 HTTP 实现。 的测试框架用于针对本地嵌入式 8 实例和上的远程 8 实例执行单元测试。 #Building 和已用于开发。 要在上针对远程 WildFly 或 JBoss 实例...

    超市管理系统java源码swing-king-design:23种java设计模式

    适配器模式(adaptor) 桥接模式(bridge) 组合模式(composite) 装饰器模式(decorate) 外观模式(facecade) 享元模式(flyweight) 代理模式(proxy) 行为型模式(behaviour) 责任链模式(chainrespon) 命令模式(commond) ...

    二十三种设计模式【PDF版】

    设计模式之 Adapter(适配器) 使用类再生的两个方式:组合(new)和继承(extends),这个已经在 thinking in java中提到过. 设计模式之 Proxy(代理) 以 Jive 为例,剖析代理模式在用户级别授权机制上的应用 设计模式之 ...

    设计模式解析(第2版)

    已经编撰好非常用的书签,方便查看,这本书真的很通俗易懂,里面对Facade模式,Adaptor模式,Strategy模式,Bridge模式,Abstrac Factory模式进行了通俗易懂,由浅入深的讲解,是本非常不错的书

    Qt中DBus的Adaptor-interface通讯方式

    DBus通讯方式中,设置适配器Adaptor和Interface的通讯方式比较麻烦,重点在于适配器类(Adaptor类)和接口类(Interface类)的生成,Qt有工具可以自动生成相应的类。※建议Qt中DBus通讯使用Interface-Connection方式...

    iterator_adaptor.pdf

    Boost Iterator_adaptor

    usb 2.0 10 100m ethernet adaptor驱动

    usb 2.0 10 100m ethernet adaptor USB网口转换器驱动

    adaptor:纯Rust中的适配器签名

    ECDSA适配器签名[] 预签名[x] 预先验证[x] 用于预签名的NIZK证明[x] 证人提取[] 签名适应[] Schnorr适配器签名[] 预签名[] 预验证[] 证人提取[] 签名适应[] 实验性 该库实现了加密原语,未经加密社区测试...

    USB 2.0 10/100M Ethernet Adaptor

    USB 2.0 10/100M Ethernet Adaptor

    USB 2.0 10/100M Ethernet Adaptor有线网卡驱动

    USB 2.0 10/100M Ethernet Adaptor有线网卡驱动 很好用

    USB 2.0 10/100M Ethernet Adaptor 网卡转换驱动

    USB 2.0 10/100M Ethernet Adaptor操作简单, 1.插上USB 2.0 10/100M Ethernet Adaptor设备 2.解压驱动包点击安装 3.刷新或重启电脑。 恭喜你,可以上网了。。。。

    0-30 isis_switching_Adaptor_3a_

    Switching adaptor 0-30 volts / 3A

    shape-adaptor:执行“形状适配器

    形状适配器该存储库包含支持该论文的源代码: ,由和。 Shape Adapter是一个为卷积神经网络(CNN)设计的可学习的池化模块,可自动为训练数据集学习合适的调整大小因子。数据集该项目评估图像分类任务。 对于小...

    Ethernet Adaptor网卡驱动

    网卡驱动

    Qt中DBus通讯方式(Adaptor-interface方式)

    DBus通讯方式中,设置适配器Adaptor和Interface的通讯方式比较麻烦,重点在于适配器类(Adaptor类)和接口类(Interface类)的生成,Qt有工具可以自动生成相应的类。※建议Qt中DBus通讯使用Interface-Connection方式...

Global site tag (gtag.js) - Google Analytics