字号:大 中 小
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中一个。
分享到:
相关推荐
Java适配器的几个小例子,对初学者有帮助
1.概念:将两个不兼容的类纠合在一起使用,属于结构型模式,需要有Adaptee(被适配者)和Adaptor(适配器)两个身份. 2.为何使用:我们经常碰到要将两个没有关系的类组合在一起使用,第一解决方案是:修改各自类的接口,...
23种java版设计模式源码案例.zip 0.目录 创建型模式(creational) 简单工厂(simplefactory) 动态工厂(dynamic) 抽象工厂(abstract) 单例模式(singleton) 建造者模式(builder) 原型模式(prototype) 结构型模式...
iOS设计模式之适配器模式,简单的demo 去分析对应的设计
#HTTP 资源适配器 此 HTTP 资源适配器是的实现,使用作为底层 HTTP 实现。 的测试框架用于针对本地嵌入式 8 实例和上的远程 8 实例执行单元测试。 #Building 和已用于开发。 要在上针对远程 WildFly 或 JBoss 实例...
适配器模式(adaptor) 桥接模式(bridge) 组合模式(composite) 装饰器模式(decorate) 外观模式(facecade) 享元模式(flyweight) 代理模式(proxy) 行为型模式(behaviour) 责任链模式(chainrespon) 命令模式(commond) ...
设计模式之 Adapter(适配器) 使用类再生的两个方式:组合(new)和继承(extends),这个已经在 thinking in java中提到过. 设计模式之 Proxy(代理) 以 Jive 为例,剖析代理模式在用户级别授权机制上的应用 设计模式之 ...
已经编撰好非常用的书签,方便查看,这本书真的很通俗易懂,里面对Facade模式,Adaptor模式,Strategy模式,Bridge模式,Abstrac Factory模式进行了通俗易懂,由浅入深的讲解,是本非常不错的书
DBus通讯方式中,设置适配器Adaptor和Interface的通讯方式比较麻烦,重点在于适配器类(Adaptor类)和接口类(Interface类)的生成,Qt有工具可以自动生成相应的类。※建议Qt中DBus通讯使用Interface-Connection方式...
Boost Iterator_adaptor
usb 2.0 10 100m ethernet adaptor USB网口转换器驱动
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操作简单, 1.插上USB 2.0 10/100M Ethernet Adaptor设备 2.解压驱动包点击安装 3.刷新或重启电脑。 恭喜你,可以上网了。。。。
Switching adaptor 0-30 volts / 3A
形状适配器该存储库包含支持该论文的源代码: ,由和。 Shape Adapter是一个为卷积神经网络(CNN)设计的可学习的池化模块,可自动为训练数据集学习合适的调整大小因子。数据集该项目评估图像分类任务。 对于小...
网卡驱动
DBus通讯方式中,设置适配器Adaptor和Interface的通讯方式比较麻烦,重点在于适配器类(Adaptor类)和接口类(Interface类)的生成,Qt有工具可以自动生成相应的类。※建议Qt中DBus通讯使用Interface-Connection方式...